[HADOOP] Hadoop과 압축 된 입력 파일에 관한 아주 기본적인 질문
HADOOPHadoop과 압축 된 입력 파일에 관한 아주 기본적인 질문
저는 하둡을 들여다 보았습니다. 내 이해가 옳다면 나는 매우 큰 파일을 처리 할 수 있었고 다른 노드로 분할되었다. 그러나 파일이 압축 되었다면 파일을 분할 할 수없고 단일 노드로 처리해야한다. 병렬 컴퓨터의 클러스터에서 mapreduce를 실행).
내 질문은, 위의 가정 올바른지, 고정 크기 청크, 또는 매일 청크에서 수동으로 큰 파일을 분할 할 수 있으며 그들을 압축 한 다음 압축 된 입력 파일의 목록을 mapreduce 수행하려면 전달할 수 있습니다?
해결법
-
==============================
1.BZIP2는 hadoop에서 분할 가능합니다. 매우 우수한 압축률을 제공하지만 CPU 시간과 성능은 압축이 매우 많은 CPU 소비로 인해 최적의 결과를 제공하지 못합니다.
BZIP2는 hadoop에서 분할 가능합니다. 매우 우수한 압축률을 제공하지만 CPU 시간과 성능은 압축이 매우 많은 CPU 소비로 인해 최적의 결과를 제공하지 못합니다.
LZO는 hadoop에서 분할 가능합니다. 분할 가능한 압축 LZO 파일이 있습니다. 병렬로 처리하려면 외부 .lzo.index 파일이 있어야합니다. 라이브러리는 로컬 또는 분산 방식으로 이러한 인덱스를 생성하는 모든 방법을 제공합니다.
LZ4는 hadoop에서 분할 가능합니다. 분할 가능한 4mc 파일을 가지고 있습니다. 외부 색인 생성이 필요 없으며 제공되는 명령 줄 도구 또는 Java / C 코드 (내부 / 외부)에 아카이브를 생성 할 수 있습니다. 4mc는 속도 / 압축 비율의 모든 레벨에서 hadoop LZ4에서 사용할 수 있습니다. 고속 모드에서부터 500MB / s 압축 속도에 이르기까지 고 / 초 모드에 이르기까지 압축률이 증가하여 GZIP와 거의 유사합니다.
-
==============================
2.LZO 압축 사용을 고려하십시오. 그것은 분할 가능합니다. 이는 큰 .lzo 파일을 많은 매퍼가 처리 할 수 있음을 의미합니다. Bzip2가 그렇게 할 수는 있지만 느립니다.
LZO 압축 사용을 고려하십시오. 그것은 분할 가능합니다. 이는 큰 .lzo 파일을 많은 매퍼가 처리 할 수 있음을 의미합니다. Bzip2가 그렇게 할 수는 있지만 느립니다.
Cloudera는 그것에 대해 소개했다. MapReduce의 경우 LZO는 압축비와 압축 / 압축 해제 속도 사이의 균형을 잘 유지합니다.
-
==============================
3.예, 하나의 대형 압축 파일 또는 여러 개의 압축 파일 (-files 또는 api로 지정된 여러 파일)을 가질 수 있습니다.
예, 하나의 대형 압축 파일 또는 여러 개의 압축 파일 (-files 또는 api로 지정된 여러 파일)을 가질 수 있습니다.
TextInputFormat 및 하위 항목은 .gz 압축 파일을 자동으로 처리해야합니다. (처리를 위해 입력 파일을 청크로 분할 할) 자신의 InputFormat과 청크에서 한 번에 하나의 레코드를 추출하는 RecordReader를 구현할 수도 있습니다.
일반 copmression의 또 다른 대안은 압축 파일 시스템 (예 : 압축 패치, zfs, compFUSEd 또는 FuseCompress ...와 함께 ext3)을 사용하는 것일 수 있습니다.
-
==============================
4.압축 코덱으로 bz2를 사용할 수 있으며이 형식도 분리 할 수 있습니다.
압축 코덱으로 bz2를 사용할 수 있으며이 형식도 분리 할 수 있습니다.
from https://stackoverflow.com/questions/2078850/very-basic-question-about-hadoop-and-compressed-input-files by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] Hive에서 날짜 차이를 계산하는 방법 (0) | 2019.07.07 |
---|---|
[HADOOP] 원사 MapReduce 작업 문제 - Hadoop 2.3.0에서 AM 컨테이너 시작 오류 (0) | 2019.07.07 |
[HADOOP] 어떻게하면 Python / pyspark로 graphx를 실행할 수 있습니까? (0) | 2019.07.07 |
[HADOOP] Hadoop 2의 Hive 매퍼 수를 늘립니다. (0) | 2019.07.07 |
[HADOOP] 싱크가 실패한 후에 Flume-NG가 강제로 이벤트 백 로그를 처리하도록하려면 어떻게해야합니까? (0) | 2019.07.07 |