HDFSConnector
Accède à HDFS (Hadoop Distributed File System) pour charger, télécharger ou supprimer des fichiers et des dossiers ou contenu de dossier depuis un service HDFS.
Utilisations typiques
- Gestion de jeux de données sous HDFS en chargeant, téléchargeant et supprimant des fichiers ou des dossiers.
- Transfert de contenu d'un fichier (tel qu'un XML ou un Raster) dans un attribut FME
- Lecture de données HDFS téléchargées en utilisant FeatureReader, ou en chargeant des données écrites par FeatureWriter.
- Récupération de noms de fichier ou dossier, de chemins et autres informations de HDFS pour les utiliser ailleurs dans un projet.
Comment fonctionne-t-il ?
HDFSConnector utilise le compte HDFS (soit via une ancienne connexion web FME, soit en définissant une nouvelle connexion via le Transformer) pour accéder au service de stockage de fichiers.
En fonction des actions que vous avez choisies, il téléchargera des fichiers, des dossiers et des attributs, dressera la liste des informations du service ou supprimera des éléments du service. Pour les téléchargements, les attributs de chemin d'accès sont ajoutés aux entités de sortie. Pour les actions de liste, les informations sur les fichiers/dossiers sont ajoutées comme attributs.
Exemples
Dans cet exemple, le HDFSConnector est utilisé pour télécharger une geodatabase Esri depuis HDFS. Après avoir créé une connexion web valide à un compte HDFS (ce qui peut être fait directement dans le paramètre Compte HDFS), et avoir navigué jusqu'au dossier de la geodatabase, le chemin HDFS est récupéré et une destination pour le téléchargement est sélectionnée.
Un FeatureReader est ajouté pour lire le jeu de données nouvellement téléchargé. Ici, le type d'entités PostalAddress sera traité ailleurs dans l'espace de travail.
En exécutant le téléchargement ici dans le projet, la géodatabase sera rafraîchie chaque fois que le projet est exécuté.
Dans cet exemple, HDFSConnector est utiliser pour télécharger une orthoimage raster depuis HDFS dans un attribut.
Le fichier est lu depuis HDFS, et son contenu est stocké sous forme d'attribut blob. Ensuite, RasterReplacer est utilisé pour interpréter le blob dans un format raster utilisable.
La combinaison de ces deux Transformers évite le téléchargement d'une image en local pour une relecture. Une technique similaire peut être utilisée pour les fichiers de nuages de points, à l'aide du Transformer PointCloudReplacer.
Notes
- Ce Transformer ne peut pas être utilisé pour déplacer ou copier directement des fichiers entre différents emplacements HDFS . Cependant, plusieurs HDFSConnector peuvent être utilisés pour accomplir ces tâches.
- FeatureReader peut accéder directement à HDFS (sans utiliser HDFSConnector ), mais une copie locale du jeu de données ne sera pas créée.
Configuration
Ports d'entrée
Ce Transformer accepte tous types d'entités.
Ports de sortie
La sortie de ce Transformer varie selon l'action HDFS effectuée.
- Une action de Chargement va sauvegarder le chemin HDFS et l'ID du fichier vers un attribut.
- Une action Télécharger peut servir à enregistrer un fichier, un dossier ou un attribut.
- Une action de Suppression n'a pas de port de sortie.
- Une action Lister produira une nouvelle entité pour chaque fichier/dossier trouvé dans le chemin spécifié. Chacune de ces nouvelles entités aura des attributs listant diverses informations sur l'objet.
Les entités qui provoquent l'échec de l'opération ressortent par ce port. Un attribut fme_rejection_code, ayant la valeur ERROR_DURING_PROCESSING, sera ajouté, ainsi qu'un attribut fme_rejection_message plus descriptif qui contient des détails plus spécifiques sur la raison de l'échec.
Note: Si une entité entrant dans HDFSConnector possède déjà une valeur pour fme_rejection_code, cette dernière sera supprimée.
Gestion des entités rejetées : ce paramètre permet d'interrompre la traduction ou de la poursuivre lorsqu'elle rencontre une entité rejetée. Ce paramètre est disponible à la fois comme option par défaut de FME et comme paramètre de traitement.
Paramètres
Action HDFS |
Le type d'opération à effectuer. Les choix comprennent :
|
Compte HDFS |
L'exécution d'opérations sur un compte HDFS nécessite l'utilisation d'un des trois mécanismes d'authentification disponibles (Simple, Token, Kerberos) en utilisant une connexion Web. Pour créer une connexion HDFS, cliquez sur la boîte déroulante Compte HDFS et sélectionnez Ajouter une connexion web. La connexion pourra ensuite être gérée via Outils > Options FME > Connexions Web. |
Les autres paramètres disponibles dépendent de la valeur du paramètre Requête > HDFS Action. Les paramètres de chaque action HDFS sont détaillés ci-dessous.
Chemin HDFS
Chemin à supprimer |
L'ID d'objet d'un fichier ou d'un dossier à supprimer sur HDFS. Si des informations d'identification valides ont été fournies pour la connexion Web, vous pouvez naviguer vers un emplacement. |
Source HDFS
Télécharger à partir du chemin |
Le chemin d'accès au HDFS du fichier/dossier à télécharger. Si des informations d'identification valides ont été fournies pour une connexion Web, vous pouvez naviguer vers un emplacement. |
Destination
Télécharger en tant que |
Sélectionner s'il faut stocker les données téléchargées dans un Fichier, dans un Répertoire ou dans un Attribut.
|
Télécharger dans le dossier | Indiquez le chemin d'accès au dossier qui stockera le fichier téléchargé. Valable pour le téléchargement en tant que fichier ou dossier. |
Inclure les sous-dossiers | Choisissez de télécharger ou non les sous-dossiers de la source HDFS. Valable uniquement pour le téléchargement en tant que dossier. |
Télécharger vers attribut |
Spécifiez l'attribut qui stockera le contenu du fichier téléchargé. Valable uniquement pour le téléchargement en tant qu'attribut. Note: FME tentera de convertir le contenu de l'attribut en une chaîne UTF-8. Si cela échoue, le contenu de l'attribut sera créé sous forme de binaire brut. Pour vous assurer que les octets d'origine sont toujours préservés et ne sont jamais convertis en UTF-8, utilisez plutôt Télécharger en tant que fichier. |
Chemin HDFS
Chemin du service Dropbox | L'ID du dossier sur le serveur HDFS pour lister le contenu. Si des informations d'identification valides ont été fournies pour la connexion Web, vous pouvez naviguer vers un emplacement. |
Noms des attributs en sortie
Des noms d'attributs par défaut sont fournis automatiquement et peuvent être écrasés.
Nom de fichier ou de dossier |
Nom de l'attribut qui contient le nom d'un objet sur HDFS. |
ID de fichier ou de dossier |
Nom de l'attribut qui contient l'ID d'un objet sur HDFS. |
Chemin de fichier ou de dossier |
Nom de l'attribut qui contient le chemin d'un objet sur HDFS. |
Taille de fichier |
Nom de l'attribut qui contient la taille d'un objet sur HDFS. |
Dernière modification |
Nom de l'attribut qui contient la date de dernière modification d'un objet sur HDFS. |
Marqueur de fichier ou dossier |
Nom de l'attribut l’attribut qui contient le type (fichier ou dossier) d'un objet sur HDFS. |
Chemin relatif |
Nom de l'attribut qui contient le nom d'un chemin relatif sur HDFS. |
Dernier fichier atteint |
Nom de l'attribut qui contient la date de dernier accès à un objet fichier sur HDFS. |
Taille de bloc de fichier |
Nom de l'attribut qui contient la taille de bloc d'un fichier objet sur HDFS. |
Groupe propriétaire |
Nom de l'attribut qui contient le nom du groupe auquel appartient un objet sur HDFS. |
Groupe utilisateur |
Nom de l'attribut qui contient le nom de l'utilisateur auquel appartient un objet sur HDFS. |
Permission Octal |
Nom de l'attribut qui contient le code de permission octale d'un objet sur HDFS. |
Compte de réplication de fichier |
Nom de l'attribut qui contient le nombre de réplication d'un objet fichier sur HDFS. |
Source
Chargement |
Type de données devant être chargées.
Lorsque l'on travaille avec de gros objets, Fichier est un meilleur choix que Attribut car les données transitent directement via le disque et ne nécessitent pas que l'objet soit stocké entièrement dans l'entité. HDFS traite les fichiers de même nom dans un dossier spécifique comme dupliqués, donc vous pouvez charger plusieurs fichiers de même nom dans un dossier. Lorsque l'on veut télécharger le contenu d'un répertoire, il vaut mieux le télécharger en tant que répertoire au lieu d'installer un chemin fixe et d'envoyer des entités multiples dans le connecteur à télécharger en tant que fichier. |
Fichier à charger |
Fichier à charger sur HDFS si le paramètre 'Charger' vaut Fichier. |
Dossier à charger |
Répertoire à charger sur HDFS si le paramètre 'Charger' vaut Dossier. |
Inclure les sous-dossiers |
Choisir si l'on veut charger les sous-dossiers du dossier à télécharger ou non. |
Attribut à télécharger en tant que fichier |
Les données à charger, fournies depuis un attribut si le paramètre 'Charger depuis' vaut Attribut. |
Destination HDFS
Télécharger vers le chemin | Le chemin sur HDFS où charger le fichier source. Pour charger dans le répertoire racine, entrez "/". |
Charger avec le nom de fichier | Le nom du fichier créé à partir des données fournies dans Attribut à télécharger en tant que fichier. Le nom doit inclure une extension de nom de fichier (par exemple, .txt, .jpg, .doc). |
Options de téléversement
Si le fichier existe à la destination |
Choisir soit d'écraser, attacher ou ne rien faire si un fichier existe dans le dossier de destination du téléversement. |
Permission de fichier/dossier | La valeur de permission octale (format UNIX) à définir pour l'objet téléchargé. Ce paramètre n'est pas disponible si "Attacher" est choisi pour le paramètre précédent. Dans ce cas, l'objet conserve sa valeur d'autorisation initiale. |
Noms des attributs en sortie
ID de fichier ou de dossier |
Nom de l'attribut qui contient l'ID du fichier/dossier qui aura juste été chargé. |
Chemin de fichier ou de dossier |
Nom de l'attribut qui contient le chemin d'un fichier sur HDFS. |
Éditer les paramètres des Transformers
À l'aide d'un ensemble d'options de menu, les paramètres du Transformer peuvent être attribués en faisant référence à d'autres éléments du traitement. Des fonctions plus avancées, telles qu'un éditeur avancé et un éditeur arithmétique, sont également disponibles dans certains Transformers. Pour accéder à un menu de ces options, cliquez sur à côté du paramètre applicable. Pour plus d'informations, voir Options de menus et paramètres de Transformer.
Définir les valeurs
Il existe plusieurs façons de définir une valeur à utiliser dans un Transformer. La plus simple est de simplement taper une valeur ou une chaîne de caractères, qui peut inclure des fonctions de différents types comme des références d'attributs, des fonctions mathématiques et de chaînes de caractères, et des paramètres d'espace de travail. Il existe un certain nombre d'outils et de raccourcis qui peuvent aider à construire des valeurs, généralement disponibles dans le menu contextuel déroulant adjacent au champ de valeur.
Utilisation de l'éditeur de texte
L'éditeur de texte fournit un moyen efficace de construire des chaînes de textes (dont les expressions régulières) à partir de données source diverses, telles que des attributs, des paramètres et des constantes, et le résultat est directement utilisé dans le paramètre.
Utilisation de l'éditeur arithmétique
L'éditeur arithmétique fournit un moyen simple de construire des expressions mathématiques à partir de plusieurs données source, telles que des attributs et des fonctions, et le résultat est directement utilisé dans un paramètre.
Valeur conditionnelle
Définit des valeurs selon un ou plusieurs tests.
Fenêtre de définition de conditions
Contenu
Les expressions et chaînes de caractères peuvent inclure des fonctions, caractères, paramètres et plus.
Lors du paramétrage des valeurs - qu'elles soient entrées directement dans un paramètre ou construites en utilisant l'un des éditeurs - les chaînes de caractères et les expressions contenant des fonctions Chaîne de caractères, Math, Date et heure ou Entité FME auront ces fonctions évaluées. Par conséquent, les noms de ces fonctions (sous la forme @<nom_de_fonction>) ne doivent pas être utilisés comme valeurs littérales de chaîne de caractères.
Ces fonctions manipulent les chaînes de caractères. | |
Caractères spéciaux |
Un ensemble de caractères de contrôle est disponible dans l'éditeur de texte. |
Plusieurs fonctions sont disponibles dans les deux éditeurs. | |
Fonctions Date/heure | Les fonctions de dates et heures sont disponibles dans l'Editeur texte. |
Ces opérateur sont disponibles dans l'éditeur arithmétique. | |
Elles retournent des valeurs spécifiques aux entités. | |
Les paramètres FME et spécifiques au projet peuvent être utilisés. | |
Créer et modifier un paramètre publié | Créer ses propres paramètres éditables. |
Options - Tables
Les Transformers avec des paramètres de style table possèdent des outils additionnels pour remplir et manipuler des valeurs.
Réordonner
|
Activé une fois que vous avez cliqué sur un élément de ligne. Les choix comprennent :
|
Couper, Copier et Coller
|
Activé une fois que vous avez cliqué sur un élément de ligne. Les choix comprennent :
Copier, copier et coller peuvent être utilisés au sein d'un Transformer ou entre Transfromers. |
Filtre
|
Commencez à taper une chaîne de caractères, et la matrice n'affichera que les lignes correspondant à ces caractères. Recherche dans toutes les colonnes. Cela n'affecte que l'affichage des attributs dans le Transformer - cela ne change pas les attributs qui sont sortis. |
Importer
|
Le bouton d'import remplit la table avec un jeu de nouveaux attributs lus depuis un jeu de données. L'application spécifique varie selon les Transformers. |
Réinitialiser/Rafraîchir
|
Réinitialise la table à son état initial, et peut fournir des options additionnelles pour supprimer des entrées invalides. Le comportement varie d'un Transformer à l'autre. |
Note : Tous les outils ne sont pas disponibles dans tous les Transformers.
Références
Comportement |
|
Stockage des entités |
Non |
Dépendances | Compte HDFS |
Alias | |
Historique | Implémenté dans FME 2018.0 |
FME Community
FME Community iest l'endroit où trouver des démos, des tutoriaux, des articles, des FAQ et bien plus encore. Obtenez des réponses à vos questions, apprenez des autres utilisateurs et suggérez, votez et commentez de nouvelles entités.
Rechercher tous les résultats sur ce Transformer sur FME Community.