Maneira mais rápida de importar arquivos no Spark?

Maneira mais rápida de importar arquivos no Spark?

Estou brincando com o Spark 3.0.1 e estou realmente impressionado com o desempenho do Spark SQL em GB de dados.

Estou tentando entender qual é a melhor maneira de importar vários arquivos JSON no dataframe do Spark antes de executar as consultas de análise.

No momento, tentei importar cerca de 1.500 arquivos .gz contendo um arquivo estruturado json cada. Esses arquivos são armazenados em um bucket S3 e eu tenho um pipeline de dados que preenche esse bucket a cada x período de tempo. Estamos falando de um tamanho total de 5 GB para arquivos de 1.500 gz, descompactados é em torno de 60/70 GB (conjunto de dados completo).

A importação desses arquivos do S3 leva quase 3 a 4 minutos, enquanto as consultas SQL levam apenas alguns segundos.

O gargalo é claramente S3 aqui.

Qual seria a abordagem ideal aqui para acelerar a importação desses arquivos gz?

Qualquer sugestão seria extremamente apreciada.

Obrigado!

informação relacionada