Spark에서 파일을 가져오는 가장 빠른 방법은 무엇입니까?

Spark에서 파일을 가져오는 가장 빠른 방법은 무엇입니까?

저는 Spark 3.0.1을 사용해 보고 있는데 GB 데이터에 대한 Spark SQL의 성능에 정말 깊은 인상을 받았습니다.

분석 쿼리를 실행하기 전에 Spark 데이터 프레임에서 여러 JSON 파일을 가져오는 가장 좋은 방법이 무엇인지 이해하려고 합니다.

지금은 각각 json 구조 파일이 포함된 ~1,500개의 .gz 파일을 가져오려고 했습니다. 이 파일은 S3 버킷에 저장되며 매 x 시간마다 이 버킷을 채우는 데이터 파이프라인이 있습니다. 우리는 1.500gz 파일의 전체 크기가 5GB에 대해 이야기하고 있으며 압축되지 않은 경우 약 60/70GB(전체 데이터 세트)입니다.

S3에서 이러한 파일을 가져오는 데는 거의 3~4분이 소요되는 반면, SQL 쿼리는 몇 초밖에 걸리지 않습니다.

여기서 병목 현상은 분명히 S3입니다.

이러한 gz 파일 가져오기 속도를 높이기 위한 이상적인 접근 방식은 무엇입니까?

어떤 제안이라도 대단히 감사하겠습니다.

감사합니다!

관련 정보