J'essaie d'exécuter un travail sur Elastic MapReduce (EMR) avec un fichier jar personnalisé. J'essaie de traiter environ 1000 fichiers dans un seul répertoire. Lorsque je soumets mon travail avec le paramètre s3n://bucketname/compressed/*.xml.gz
, j'obtiens une erreur "0 fichiers correspondants". Si je passe juste le chemin absolu à un fichier (par exemple s3n://bucketname/compressed/00001.xml.gz
), il fonctionne bien, mais un seul fichier est traité. J'ai essayé d'utiliser le nom du répertoire (s3n://bucketname/compressed/
), en espérant que les fichiers à l'intérieur seront traités, mais cela passe juste le répertoire au travail.Plusieurs fichiers en entrée sur Amazon Elastic MapReduce
En même temps, j'ai une installation hadoop locale plus petite. En cela, quand je passe mon travail avec des caractères génériques (/path/to/dir/on/hdfs/*.xml.gz
), cela fonctionne très bien et tous les 1000 fichiers sont répertoriés correctement.
Comment puis-je obtenir EMR pour lister tous mes fichiers?
Alternativement, comment puis-je lister les fichiers dans un répertoire de s3 à partir du code? Je peux ensuite générer les chemins à partir de ces fichiers. –
Cela fonctionne maintenant! Il y avait un fichier vide appelé 'compressed' dans le même compartiment. Dès que j'ai supprimé le fichier vide, le programme a commencé à fonctionner. –