폴더가있는 디렉토리가 있고 각 폴더에는 압축 된 JSON 파일 (.gz
)이 있습니다.S3에서 Json 파일을 읽는 가장 빠른 방법은 다음과 같습니다. Spark
val df = sqlContext.jsonFile("s3://testData/*/*/*")
df.show()
예 : 현재 내가 좋아하는 일을 오전
이testData/May/01/00/File.json.gz
각 압축 파일에 대한 11기가바이트 (17)이다.
나는이 :
- 마스터 : 1 c3.4xlarge
- 코어 : 19 c3.4xlarge
- 스파크 1.5.2
- EMR-4.2.0
압축 된 파일에는 여러 개의 json 개체/파일이 있습니다. 이 프로세스는 방금 읽는 데 막대한 시간이 걸립니다 (위의 두 문장 만). 이 작업을 수행하는 더 빠른 방법이 있습니까? 스키마는 복잡하지 않습니다. 데이터 집합을 분석하기 위해 몇 가지 쿼리를 작성할 계획입니다. 하지만 s3에서 데이터를 읽는 데 걸리는 시간이 걱정됩니다.
최대로드는 10TB가 될 수 있습니다. 캐시를 사용하여 나중에 쿼리를 처리 할 계획입니다.
http://tech.kinja.com/how-not-to-pull-from-s3-using-apache-spark-1704509219 – zero323