복붙노트

[HADOOP] sqloop을 사용하여 하이브에 외부 테이블을 만드는 법. 제안 필요

HADOOP

sqloop을 사용하여 하이브에 외부 테이블을 만드는 법. 제안 필요

sqoop을 사용하면 관리되는 테이블을 만들 수 있지만 외부 테이블은 만들 수 없습니다.

데이터웨어 하우스에서 데이터를 언로드하고 하이브 외부 테이블에로드하는 것이 가장 좋은 방법이 무엇인지 알려주십시오.

1. 창고의 테이블이 분할됩니다. 일부는 현명하게 분할 된 상태로 일부는 상태별로 분할됩니다.

프로덕션 환경에서 사용되는 생각이나 실습을 넣으십시오.

해결법

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

    1.Sqoop은 하이브 외부 테이블 생성을 지원하지 않습니다. 대신 당신은 :

    Sqoop은 하이브 외부 테이블 생성을 지원하지 않습니다. 대신 당신은 :

  2. ==============================

    2.1 단계 : mysql에서 하이브 테이블로 데이터를 가져옵니다.

    1 단계 : mysql에서 하이브 테이블로 데이터를 가져옵니다.

    sqoop 가져 오기 --connect jdbc : mysql : // localhost / - 사용자 이름 교육 - 암호 훈련 - 테이블 - 하이브 임포트 - 하이브 테이블 -m 1 --fields-terminated-by ','

    2 단계 : 하이브에서 테이블 유형을 Managed에서 External로 변경합니다.

        Alter table <Table-name> SET TBLPROPERTIES('EXTERNAL'='TRUE')
    

    참고 : 하이브 테이블로 직접 가져올 수도 있고 하이브의 백 엔드로 가져올 수도 있습니다.

  3. ==============================

    3.저의 가장 좋은 제안은 데이터를 HDFS로 SQOOP로 보내고 Raw 작업 및 변환을 위해 EXTERNAL을 생성하는 것입니다.

    저의 가장 좋은 제안은 데이터를 HDFS로 SQOOP로 보내고 Raw 작업 및 변환을 위해 EXTERNAL을 생성하는 것입니다.

    마지막으로 내부 테이블에 데이터를 정리합니다. 나는 이것이 올바른 방법으로 일을 끝내는 최상의 방법 중 하나라고 생각합니다. 희망이 도움이! 다음 링크를 참조하십시오.

    건배!!

  4. from https://stackoverflow.com/questions/27991258/how-to-create-external-table-in-hive-using-sqoop-need-suggestions by cc-by-sa and MIT license