복붙노트

[HADOOP] 중복 된 항목을 삽입 Sqoop을 수출

HADOOP

중복 된 항목을 삽입 Sqoop을 수출

나는 두 개의 열 ID와 URL을 포함하고 두 개의 행이 포함 MySQL의에서 테이블 사이트가을 남기고 방법 Sqoop을 수출을 이해하려고 노력하고 있어요

1,www.yahoo.com
2,www.gmail.com

테이블에는 기본 키가 없습니다

내가 아래 실행하여 MySQL의 사이트 테이블 HDFS에서 항목을 수출하고 때의 삽입 중복 항목을 명령

나는 HDFS의 항목 아래에 있습니다

1,www.one.com
2,www.2.com
3,www.3.com
4,www.4.com

MySQL의 : JDBC --connect 수출 --table 사이트 Sqoop을 // localhost를 / loudacre - 사용자 이름 교육 훈련을 --password을 / 사이트 / --update 모드 allowinsert --update-키 ID-DIR --export

그래서 그 대신 업데이트 기존의 ID를 자사의 삽입 중복 ID를 다시 (www.yahoo.com 두 1, 1 www.one.com과 1을 의미)

나는 결과가 same.Does의 일어나고있는 --update-키를 제거하는 경우에도 테이블이 기본 키를 가지고 있지 않기 때문에

나는 클라우 데라 빠른 VM에 Sqoop을 1.4.5을 사용하고 있습니다

어떤 도움?

해결법

  1. ==============================

    1.Sqoop을 워드 프로세서에 따라,

    Sqoop을 워드 프로세서에 따라,

    그래서, --update-키 열 중 하나는 기본 키 또는에 고유 인덱스가 있어야합니다.

    내부적으로, Sqoop을 이런 식으로 쿼리를 작성합니다

    INSERT INTO 테이블 (ID, 이메일) VALUES (1 www.one.com) DUPLICATE KEY UPDATE 이메일 www.one.com = ON

    그래서 다른 모든 값.

  2. from https://stackoverflow.com/questions/39137254/sqoop-export-inserting-duplicate-entries by cc-by-sa and MIT license