2017-02-13 3 views
-2

Ma S3 estEn utilisant MapReduce pour lire les fichiers dans un répertoire

/sssssss/xxxxxx/rrrrrr/xx/file1 
/sssssss/xxxxxx/rrrrrr/xx/file2 
/sssssss/xxxxxx/rrrrrr/xx/file3 
/sssssss/xxxxxx/rrrrrr/yy/file4 
/sssssss/xxxxxx/rrrrrr/yy/file5 
/sssssss/xxxxxx/rrrrrr/yy/file6 

Comment mon programme MapReduce pour lire ces fichiers sur S3?

+0

Précisez la signification du titre –

Répondre

0

Pour un chemin d'entrée que vous effectuez les opérations suivantes:

FileInputFormat.addInputPath(job, new Path("/sssssss/xxxxxx/rrrrrr/xx/")); 

Pour deux voies d'entrée, vous effectuez les opérations suivantes:

FileInputFormat.addInputPath(job, new Path("/sssssss/xxxxxx/rrrrrr/xx/")); 
FileInputFormat.addInputPath(job, new Path("/sssssss/xxxxxx/rrrrrr/yy/")); 

ou utiliser addInputPaths(). Voir the documentation of FileInputPath (selon votre version de Hadoop) pour plus de détails.

0

Il peut être simplifié par la manière suivante: -

FileInputFormat.setInputDirRecursive(job, true); 
FileInputFormat.addInputPaths(conf, args[0]); 

Il vous suffit de donner le chemin de base du s3 dir et pas l'emplacement exact de chaque fichier. Il ira au dernier répertoire qui contient le fichier.