Copie arquivos (config) do HDFS para o diretório de trabalho local de todos os executores spark

Eu estou procurando como copiar uma pasta com arquivos de dependências de recursos do HDFS para um diretório de trabalho local de cada executor de spark usando Java.

Eu estava pensando em usar a opção --files FILES de envio de spark, mas parece que não suporta pastas de arquivos com aninhamento arbitrário. Portanto, parece que eu tenho que fazê-lo colocando essa pasta em um caminho compartilhado do HDFS para ser copiado corretamente por cada executor em seu diretório de trabalho antes de executar um trabalho, mas ainda para descobrir como fazê-lo corretamente no código Java.

Ou zip / gzip / archive desta pasta, coloque-a no caminho compartilhado do HDFS e exploda o archive no diretório de trabalho local de cada executor do Spark.

Qualquer ajuda ou amostra de código é apreciada.

Esta é uma pasta de arquivos de configuração e eles fazem parte da computação e devem ser co-localizados com o jar principal do envio de spark (por exemplo, arquivos de banco de dados, qual código jar está usando ao executar um trabalho e, infelizmente, não posso alterar essa dependência porque estou reutilizando o código existente).

Atenciosamente, -Yuriy

questionAnswers(0)

yourAnswerToTheQuestion