2013-07-05 3 views
1

AWS의 S3 서비스에 gzip으로 압축 된 CSV 파일이 포함 된 버킷이 있지만 저장되었을 때 모두 메타 데이터 Content-Type of text/csv로 저장되었습니다.AWS EMR이 S3의 파일을 압축 해제하도록 강요합니다.

이제 AWS EMR을 사용하고 있습니다. AWS EMR을 압축 파일로 인식하지 않고 압축을 풉니 다. EMR에 대한 구성 옵션을 살펴 보았지만 작동하는 것은 보이지 않습니다 ... 거의 백만 개의 파일이 있으므로 메타 데이터 값의 이름을 바꾸려면 모든 파일을 순환시키고 메타 데이터 값의 이름을 바꾼 Boto 스크립트가 필요합니다.

나는 쉽게 찾아 볼 수 있습니까? 감사!

답변

1

Content-Type 문제 파일이 CSV 경우 ... 맞습니다 아니라, 당신이 그 (것)들을 gzip으로 압축 저장하는 경우에, 당신은 헤더 메타 데이터에 Content-Encoding: gzip을 설정 한 또한 필요가 있었다. 그렇게하면 다운로드 할 때 즉시 압축을 풀기 위해 사용자 에이전트를 가져와야합니다. 그렇게하면 "방금 작동했습니다".

(나는 Content-Type: text/plainContent-Encoding: gzip으로,이 방법 gzip으로 압축 된 로그 파일을 저장하지 않고 웹 브라우저로를 다운로드 할 때, 당신이 얻을 파일이 더 이상 브라우저 인해 콘텐츠 인코딩에 즉석에서 압축을 untwizzles 때문에 gzip으로 압축됩니다 헤더) 이미 파일을 업로드 한 이후, 내가 도울 수있는 구글 기계,이 되었습니까

하지만, :.

입력을 gzip으로 압축. 많은 입력 데이터가 이미 gzip되었지만 운좋게도 추가 인수 섹션에 -jobconf stream.recordreader.compression=gzip을 전달하면 Hadoop은 데이터를 매퍼로 전달하기 전에 즉시 압축을 해제합니다.

http://petewarden.typepad.com/searchbrowser/2010/01/elastic-mapreduce-tips.html

관련 문제