Auparavant, j'ai implémenté l'utilisation de flux pour télécharger des fichiers HTTP et FTP dans la zone locale, et j'ai également implémenté le téléchargement de fichiers locaux sur HDFS.
Les fichiers FTP et HTTP sont transférés sur HDFS, et il n'est pas nécessaire de copier les fichiers FTP et HTTP pour les télécharger localement, puis de les télécharger sur HDFS. En fait, le principe de cette chose est très simple. Le disque dur local, laissez la mémoire terminer le processus de transfert.
Voici les liens vers les outils précédents:
outil HTTP
Description du lien de l'outil FTP
Le code est le suivant:
Importer java.io.inputStream; import java.io.outputStream; import java.io.ioException; public class fileTrans {private string = ""; ""; String hdfsfilepath) {this.hdfsfilepath = hdfsfilepath;} String public gethostname (String hdfsfilepath) {return this.hdfsfilepath; ; head = head; )); filepath; hdfsutil.gethdfsnode () + hdfsutil.gethdfspath ()); .SethadoopDefault (./ Hadoop-default.xml "); filepath = ""; String HDFSFILPATH = "; FTP HostName = Args [1]; / HDFS File Path LocalPath = Args [5]; // Si vous enregistrez localement, enregistrez les lignes avant, si elle n'est pas enregistrée, remplissez 0} Catch (Exception E) {System.out.println ("[FileTrans]: Erreur des args d'entrée!"); E.PrintStackTrace (); } FileTrans FileTrans = new FileTrans (Head, HostName, FilePath, HDFSNODE, HDFSFILEPATH); head.equals ("ftp")) {System.out .println ("fileTrans ftp null"); "https")) {System.out.println ("FileTrans ftp null"); Samplelines> 0) {FileTrans.ftp.WriteStream (InsideRam, localPath, échantillons);}} else {insive = fileTrans.http.getStream (head + ": //" + hostname + "/" + filepath); > 0) {FileTrans.http.Download (Head + ": //" + HostName + "/" + FilePath, LocalPath, Samples);}} fileTrans.HDFSUtil.upload (Instream, fileTrans.hdfsutil.getFilePath ()); if (head == "ftp") {fileTrans.ftp .disconnect ();}} catch (ioException e) {System.out.println ("[FileTrans]: le fichier trans a échoué!"); } System.out.println ("[FileTrans]: Fichier Trans Success!");S'il y a un problème avec la compilation, il est mentionné dans l'article sur l'outil Hadoop. Veuillez les citer vous-même.
Cet outil peut transférer FTP ou HTTP vers HDFS, et enregistrer les n lignes de première norme localement pour analyse
Ce qui précède est tout le contenu décrit dans cet article.
Veuillez prendre le temps de partager l'article avec vos amis ou de laisser un commentaire. Nous vous remercierons sincèrement pour votre soutien!