Voici la situation : j'ai un fichier tar.gz sur un serveur FTP qui peut contenir un nombre arbitraire de fichiers.
Maintenant, ce que j'essaie d'accomplir, c'est d'avoir ce fichier en streaming et de le télécharger dans HDFS à travers un job Hadoop. Le fait que ce soit Hadoop n'est pas important, à la fin ce que j'ai besoin de faire est d'écrire un script shell qui prendrait ce fichier depuis le ftp avec wget
et écrirait la sortie dans un flux.
La raison pour laquelle j'ai vraiment besoin d'utiliser des flux est qu'il y aura un grand nombre de ces fichiers, et chaque fichier sera énorme.
C'est assez facile à faire si j'ai un fichier gzip et que je fais quelque chose comme ça :
wget -O - "ftp://${user}:${pass}@${host}/$file" | zcat
Mais je ne suis même pas sûr si c'est possible pour un fichier tar.gz, en particulier puisqu'il y a plusieurs fichiers dans l'archive. Je suis un peu confus sur la direction à prendre pour cela, toute aide serait grandement appréciée.