S3distCP 유틸리티의 이전 AMI 버전과 아마존 EMR의 차이점 - Amazon EMR

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

S3distCP 유틸리티의 이전 AMI 버전과 아마존 EMR의 차이점

아마존 EMR에서 지원되는 S3distCP 버전

아마존 EMR AMI 릴리스에서 다음 S3DistCp 버전이 지원됩니다. 1.0.7 이후 S3DistCp 버전은 클러스터에 있습니다. 최신 기능을 사용하려면 /home/hadoop/lib의 JAR을 사용하십시오.

버전 설명 릴리스 날짜
1.0.8 --appendToLastFile, --requirePreviousManifest--storageClass 옵션을 추가합니다. 2014년 1월 3일
1.0.7 --s3ServerSideEncryption 옵션을 추가합니다. 2013년 5월 2일
1.0.6 --s3Endpoint 옵션을 추가합니다. 2012년 8월 6일
1.0.5 실행할 S3DistCp 버전을 지정하는 기능을 개선했습니다. 2012년 6월 27일
1.0.4 --deleteOnSuccess 옵션을 개선했습니다. 2012년 6월 19일
1.0.3 --numberFiles--startingIndex 옵션에 대한 지원을 추가했습니다. 2012년 6월 12일
1.0.2 그룹 사용 시 파일 명명을 개선했습니다. 2012년 6월 6일
1.0.1 S3DistCp의 초기 릴리스. 2012년 1월 19일

클러스터에 S3DistCp 복사 단계 추가

S3DistCp 복사 단계를 실행 중인 클러스터에 추가하려면 다음 명령을 입력하고J-3기XXXXXX9이옥클러스터 ID로 바꾸고mybucketAmazon S3 버킷 이름을 사용하여

참고

가독성을 위해 Linux 줄 연속 문자(\)가 포함됩니다. Linux 명령에 사용하거나 제외할 수 있습니다. Windows에서는 제외시키거나 캐럿(^)으로 바꿉니다.

aws emr add-steps --cluster-id j-3GYXXXXXX9IOK \ --steps Type=CUSTOM_JAR,Name="S3DistCp step",Jar=/home/hadoop/lib/emr-s3distcp-1.0.jar,\ Args=["--s3Endpoint,s3-eu-west-1.amazonaws.com",\ "--src,s3://mybucket/logs/j-3GYXXXXXX9IOJ/node/",\ "--dest,hdfs:///output",\ "--srcPattern,.*[a-zA-Z,]+"]

예 아마존 로드 CloudFront HDFS에 로그인

이 예제는 아마존을 로드 CloudFront 실행 중인 클러스터에 단계를 추가하여 HDFS에 로그인합니다. 프로세스에서 Gzip의 압축 형식을 변경합니다 ( CloudFront 기본값) 을 LZO 로 설정합니다. 이렇게 하면 LZO를 사용하여 압축된 데이터를 압축 해제 시 여러 맵으로 분할할 수 있으므로 Gzip 사용 시 압축이 완료될 때까지 기다릴 필요가 없어서 유용합니다. 따라서 Amazon EMR을 사용하여 데이터를 분석할 때 성능이 향상됩니다. 이 예제에서는 에 지정된 정규 표현식을 사용하여 성능을 향상시킵니다.--groupBy은 주어진 시간 동안 모든 로그를 단일 파일로 결합하는 옵션을 선택합니다. Amazon EMR 클러스터는 여러 개의 작은 Gzip 압축 파일을 처리할 때보다 몇몇의 대형 LZO 압축 파일을 처리할 때 더 효과적입니다. LZO 파일을 분할하려면 파일을 인덱싱하고 하둡-lzo 타사 라이브러리를 사용해야 합니다.

아마존을 로드하려면 CloudFront HDFS에 로그인하고 다음 명령을 입력하고 바꿉니다J-3기XXXXXX9이옥클러스터 ID로 바꾸고mybucketAmazon S3 버킷 이름을 사용하여

참고

가독성을 위해 Linux 줄 연속 문자(\)가 포함됩니다. Linux 명령에 사용하거나 제외할 수 있습니다. Windows에서는 제외시키거나 캐럿(^)으로 바꿉니다.

aws emr add-steps --cluster-id j-3GYXXXXXX9IOK \ --steps Type=CUSTOM_JAR,Name="S3DistCp step",Jar=/home/hadoop/lib/emr-s3distcp-1.0.jar,\ Args=["--src,s3://mybucket/cf","--dest,hdfs:///local",\ "--groupBy,.*XABCD12345678.([0-9]+-[0-9]+-[0-9]+-[0-9]+).*",\ "--targetSize,128", "--outputCodec,lzo","--deleteOnSuccess"]

이전 예가 다음 CloudFront 로그 파일에서 실행되는 경우를 고려해 보십시오.

s3://DOC-EXAMPLE-BUCKET1/cf/XABCD12345678.2012-02-23-01.HLUS3JKx.gz s3://DOC-EXAMPLE-BUCKET1/cf/XABCD12345678.2012-02-23-01.I9CNAZrg.gz s3://DOC-EXAMPLE-BUCKET1/cf/XABCD12345678.2012-02-23-02.YRRwERSA.gz s3://DOC-EXAMPLE-BUCKET1/cf/XABCD12345678.2012-02-23-02.dshVLXFE.gz s3://DOC-EXAMPLE-BUCKET1/cf/XABCD12345678.2012-02-23-02.LpLfuShd.gz

S3DistCp는 파일을 복사 및 연결하고 다음 두 개 파일로 압축합니다. 이때 파일 이름은 정규식과 일치하는 항목에 따라 결정됩니다.

hdfs:///local/2012-02-23-01.lzo hdfs:///local/2012-02-23-02.lzo