하이브 테이블에서 snappy.parquet 파일을 만들려고합니다. 그것의 큰 파티션 테이블은 단지 그것의 작은 부분이 필요합니다. 이렇게 :하이브 결과로 마루 파일로 저장
message hive_schema {
optional int32 _col0;
optional binary _col1 (UTF8);
optional binary _col2 (UTF8);
optional binary _col3 (UTF8);
optional binary _col4 (UTF8);
optional binary _col5 (UTF8);
optional binary _col6 (UTF8);
optional binary _col7 (UTF8);
optional int64 _col8;
optional int64 _col9;
optional int64 _col10;
)
SOURCE_TABLE에서 모든 열 이름을 잃어버린 : 그것은 다음과 같은 스키마 000000_0 파일을 생성
set parquet.compression=SNAPPY;
set hive.exec.compress.output=true;
set hive.exec.compress.intermediate=true;
set hive.exec.parallel=true;
set mapred.output.compress=true;
set mapreduce.output.fileoutputformat.compress=true;
set mapred.compress.map.output=true;
set mapreduce.map.output.compress=true;
set mapred.output.compression.type=BLOCK;
set mapreduce.output.fileoutputformat.compress.type=BLOCK;
set io.seqfile.compression.type = BLOCK;
insert overwrite directory 'EXTERNAL_DIRECTORY' STORED AS PARQUET select * from SOURCE_TABLE;
. 나 어떻게 하이브 테이블로 나중에 사용할 수 있도록 제대로 저장합니까?
그래서 더 큰 소스 데이터 세트 중 하나의 파티션에서만 소싱하는 새 데이터 세트를 작성하려는 것 같습니다. 맞습니까? 그렇다면 나는 단지 당신이 이후의 특정 테이블에서 모든 데이터를 선택하는 새로운 외부 하이브 테이블을 만들 것입니다. 그런 다음 사용할 수있는 테이블 및 디렉토리/파일을 갖게됩니다. – Jared
그래, 난 큰 테이블의 부부 파티션에서 작은 데이터 세트를 만들려고합니다. 나는 새로운 하이브 테이블을 먼저 만들고 그것을 선택하려고 할 것이다. – lacerated