Comment lire un fichier CSV à partir de Hdfs?
J'ai mes Données dans un fichier CSV. Je veux lire le fichier CSV qui est dans HDFS.
Quelqu'un peut m'aider avec le code??
Je suis nouveau sur hadoop. Merci à l'Avance.
- il suffit de lire ou de mapreduce?qu'avez-vous essayé?
- J'ai juste envie de lire, pas de carte de réduire dès maintenant. Je ne suis pas en mesure de rechercher pour les classes nécessaires pour la lecture du fichier csv
- Même la Carte de Réduire de travail, juste ma tâche est d'être capable de lire un fichier csv qui est mis dans HDFS.
- Voir la réponse ci-dessous.
Vous devez vous connecter pour publier un commentaire.
Les classes nécessaires pour cela sont Système de fichiers, FSDataInputStream et Chemin. Le Client doit être quelque chose comme ceci :
FSDataInputStream a plusieurs
read
méthodes. Choisissez celui qui convient à vos besoins.Si c'est MONSIEUR, c'est encore plus facile :
Si vous souhaitez utiliser mapreduce, vous pouvez utiliser TextInputFormat de lire ligne par ligne et analyse chaque ligne de mapper la fonction map.
Autre option est de développer (ou de développement) CSV format d'entrée pour la lecture de données à partir d'un fichier.
Il y a un vieux tutoriel ici http://hadoop.apache.org/docs/r0.18.3/mapred_tutorial.html mais la logique est la même dans les nouvelles versions
Si vous êtes en utilisant un seul processus de lecture des données à partir d'un fichier, c'est le même que la lecture de fichiers à partir de n'importe quel autre fichier système. Il y a bel exemple ici https://sites.google.com/site/hadoopandhive/home/hadoop-how-to-read-a-file-from-hdfs
HTH