[HADOOP] Snappy splittable 또는 splittable입니까?
HADOOPSnappy splittable 또는 splittable입니까?
이 Cloudera 지에 따르면, Snappy는 분할 가능합니다.
그러나 hadoop 최종 가이드에서, Snappy는 분할 할 수 없습니다.
또한 웹에 약간의 정보가 있습니다. 어떤 사람들은 분열 될 수 있다고 말하고, 어떤 분은 그렇지 않다고 말한다.
해결법
-
==============================
1.둘 다 정확하지만 수준이 다릅니다.
둘 다 정확하지만 수준이 다릅니다.
Cloudera 블로그 http://blog.cloudera.com/blog/2011/09/snappy-and-hadoop/에 따르면
즉, 전체 텍스트 파일을 Snappy로 압축하면 파일을 분할 할 수 없습니다. 그러나 파일 안의 각 레코드가 Snappy로 압축 된 경우 파일을 분할 할 수 있습니다 (예 : 블록 압축을 사용하는 시퀀스 파일).
더 명확히하기 위해 동일하지 않습니다.
<START-FILE> <START-SNAPPY-BLOCK> FULL CONTENT <END-SNAPPY-BLOCK> <END-FILE>
보다
<START-FILE> <START-SNAPPY-BLOCK1> RECORD1 <END-SNAPPY-BLOCK1> <START-SNAPPY-BLOCK2> RECORD2 <END-SNAPPY-BLOCK2> <START-SNAPPY-BLOCK3> RECORD3 <END-SNAPPY-BLOCK3> <END-FILE>
작은 블록은 분할 할 수 없지만 작은 블록이있는 파일은 분할 테이블입니다.
-
==============================
2.hadoop의 모든 splittable 코덱은 org.apache.hadoop.io.compress.SplittableCompressionCodec을 구현해야합니다. hadoop 소스 코드를 2.7로 살펴보면, org.apache.hadoop.io.compress.SnappyCodec이이 인터페이스를 구현하지 않는다는 것을 알 수 있으므로 splittable이 아니라는 것을 알 수있다.
hadoop의 모든 splittable 코덱은 org.apache.hadoop.io.compress.SplittableCompressionCodec을 구현해야합니다. hadoop 소스 코드를 2.7로 살펴보면, org.apache.hadoop.io.compress.SnappyCodec이이 인터페이스를 구현하지 않는다는 것을 알 수 있으므로 splittable이 아니라는 것을 알 수있다.
-
==============================
3.나는 JSFS 파일과 압축 된 파일 사이에서 같은 수의 작업자 / 프로세서에 대해 HDFS에서 Spark 1.6.2를 테스트했습니다.
나는 JSFS 파일과 압축 된 파일 사이에서 같은 수의 작업자 / 프로세서에 대해 HDFS에서 Spark 1.6.2를 테스트했습니다.
멋진 파일은 다음과 같이 생성됩니다. .saveAsTextFile ( "/ user / qwant / benchmark_file_format / json_snappy", classOf [org.apache.hadoop.io.compress.SnappyCodec])
따라서 Snappy는 JSON 용 Spark과 분할 할 수 없습니다.
그러나 JSON 대신에 parquet (또는 ORC) 파일 형식을 사용하면이 파일은 분할 가능합니다 (gzip을 사용하더라도).
from https://stackoverflow.com/questions/32382352/is-snappy-splittable-or-not-splittable by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] Apache Mahout을 사용하여 데이터 분류 (0) | 2019.07.08 |
---|---|
[HADOOP] 돼지에서 결과를 데이터베이스로 내보내는 방법 (0) | 2019.07.08 |
[HADOOP] hadoop hdfs에서 / tmp 디렉토리 란 무엇입니까? (0) | 2019.07.08 |
[HADOOP] Apache Spark를 웹 응용 프로그램의 백엔드로 사용 (0) | 2019.07.08 |
[HADOOP] 하둡 (Hadoop) 성능 - 대용량 파일 (20GB) (0) | 2019.07.08 |