[HADOOP] HDFS에서 로컬 파일 시스템으로 Parquet 데이터 수집
HADOOPHDFS에서 로컬 파일 시스템으로 Parquet 데이터 수집
HDFS에 배포 된 Parquet 데이터 셋 (메타 데이터 파일 + .parquet 파트)을 고려할 때 파트를 올바르게 병합하고 로컬 파일 시스템에 데이터를 수집하는 방법은 무엇입니까? dfs -getmerge ... 작동하지 않습니다-메타 데이터를 실제 마루 파일과 병합합니다.
해결법
-
==============================
1.Apache Spark API와 관련하여 솔루션을 제공하는 방법이 있지만 타사 도구가없는보다 효율적인 방법이있을 수 있습니다.
Apache Spark API와 관련하여 솔루션을 제공하는 방법이 있지만 타사 도구가없는보다 효율적인 방법이있을 수 있습니다.
spark> val parquetData = sqlContext.parquetFile("pathToMultipartParquetHDFS") spark> parquet.repartition(1).saveAsParquetFile("pathToSinglePartParquetHDFS") bash> ../bin/hadoop dfs -get pathToSinglePartParquetHDFS localPath
Spark 1.4부터 DataFrame :: repartition (1) 대신 DataFrame :: coalesce (1)를 사용하는 것이 좋습니다.
-
==============================
2.당신은 돼지를 사용할 수 있습니다
당신은 돼지를 사용할 수 있습니다
A = LOAD '/path/to parquet/files' USING parquet.pig.ParquetLoader as (x,y,z) ; STORE A INTO 'xyz path' USING PigStorage('|');
임팔라 테이블을 만든 다음 사용할 수 있습니다
impala-shell -e "query" -o <output>
Mapreduce를 사용할 수도 있습니다
-
==============================
3.쪽모이 세공 도구를 사용할 수 있습니다 java -jar parquet-tools.jar 병합 소스 / 대상 /
쪽모이 세공 도구를 사용할 수 있습니다 java -jar parquet-tools.jar 병합 소스 / 대상 /
from https://stackoverflow.com/questions/31108123/collecting-parquet-data-from-hdfs-to-local-file-system by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 텍스트 파일의 하둡 사용자 정의 분할 (0) | 2019.09.07 |
---|---|
[HADOOP] Hadoop Streaming (lang : Python)에서 여러 MapReduce 작업을 캐스케이드 할 수 있습니까? (0) | 2019.09.07 |
[HADOOP] Spark 및 Python은 사용자 정의 파일 형식 / 생성기를 RDD의 입력으로 사용합니다. (0) | 2019.09.07 |
[HADOOP] Pig 출력에서 괄호와 쉼표를 제거하십시오 (0) | 2019.09.07 |
[HADOOP] AWS EMR 4.0-셸 명령을 실행하기 위해 사용자 지정 JAR 단계를 추가하는 방법 (0) | 2019.09.07 |