ListS3 2025.10.2.19¶
Bundle¶
org.apache.nifi | nifi-aws-nar
Description¶
Récupère une liste d’objets à partir d’un compartiment S3. Pour chaque objet de la liste, créez un FlowFile qui représente l’objet de manière à ce qu’il puisse être recherché conjointement avec FetchS3Object. Ce processeur est conçu pour fonctionner uniquement sur le nœud principal d’un cluster. Si le nœud principal change, le nouveau nœud principal reprendra là où le précédent s’est arrêté sans dupliquer toutes les données.
Exigences en matière d’entrées¶
FORBIDDEN
Prend en charge les propriétés dynamiques sensibles¶
false
Propriétés¶
Propriété |
Description |
|---|---|
Service des fournisseurs d’identifiants de connexion AWS |
Le Controller Service qui est utilisé pour obtenir le fournisseur d’identifiants de connexion AWS |
Compartiment |
Le compartiment S3 avec lequel interagir |
Délai d’expiration de la communication |
Le temps d’attente pour établir une connexion avec AWS ou recevoir des données de AWS avant qu’un délai d’expiration ne se produise. |
Nom de classe du signataire personnalisé |
Nom complet de la classe du signataire personnalisé. Le signataire doit implémenter l’interface de signataire ccom.amazonaws.auth. |
Emplacement du module de signataire personnalisé |
Liste séparée par des virgules des chemins d’accès aux fichiers et/ou aux répertoires contenant le fichier JAR du signataire personnalisé et ses dépendances (le cas échéant). |
Délimiteur |
Chaîne utilisée pour délimiter les répertoires dans le compartiment. Veuillez consulter la documentation AWS pour l’utilisation correcte de ce champ. |
Endpoint Override URL |
URL du point de terminaison à utiliser à la place du point de terminaison AWS par défaut, y compris le schéma, l’hôte, le port et le chemin. Les bibliothèques AWS sélectionnent une URL de point de terminaison en fonction de la région AWS, mais cette propriété remplace l’URL de point de terminaison sélectionnée, ce qui permet une utilisation avec d’autres points de terminaison compatibles S3. |
Type de liste |
Indique s’il faut utiliser le point de terminaison Liste des objets original ou le point de terminaison Liste des objets Version 2, plus récent. |
Taille du listing par lot |
Si vous n’utilisez pas de Record Writer, cette propriété détermine le nombre d’objets S3 à répertorier dans un seul lot. Lorsque ce nombre est atteint, les FlowFiles qui ont été créés sont transférés hors du processeur. Une valeur inférieure peut réduire le temps de latence en envoyant les FlowFiles avant la fin du listing. Cependant, elle peut réduire considérablement les performances. Les valeurs plus élevées peuvent nécessiter plus de mémoire pour stocker toutes les informations avant d’envoyer les FlowFiles. Cette propriété est ignorée si vous utilisez un Record Writer, car l’un des principaux avantages du Record Writer est qu’il permet d’émettre l’intégralité du listing sous la forme d’un seul FlowFile. |
Stratégie de listing |
Précisez comment déterminer les entités nouvelles/mises à jour. Voir les descriptions de chaque stratégie pour plus de détails. |
Âge maximal de l’objet |
Âge maximal que peut avoir un objet S3 pour être pris en compte ; tout objet plus ancien que ce délai (selon la date de dernière modification) sera ignoré |
Âge minimal de l’objet |
Âge minimum que doit avoir un objet S3 pour être pris en compte ; tout objet plus récent que de délai (selon la date de dernière modification) sera ignoré |
Préfixe |
Le préfixe utilisé pour filtrer la liste des objets. Ne commencez pas par une barre oblique « / ». Dans la plupart des cas, il doit se terminer par une barre oblique « / ». |
Record Writer (créateur d’enregistrement) |
Spécifie le Record Writer à utiliser pour créer le listing. Si vous ne le précisez pas, un FlowFile sera créé pour chaque entité inscrite sur la liste. Si le Record Writer est spécifié, toutes les entités seront écrites sur un seul FlowFile au lieu d’ajouter des attributs à des FlowFiles individuels. |
Region |
La région AWS à laquelle se connecter. |
Demandeur paie |
Si « true », indique que le demandeur accepte de payer tous les frais associés à l’annonce du compartiment S3. Cela définit l’en-tête « x-amz-request-payer » sur « demandeur ». Notez que ce paramètre n’est pas applicable lorsque “Utiliser les versions” est “true”. |
Service contextuel SSL |
Spécifie un service contextuel SSL facultatif qui, s’il est fourni, sera utilisé pour créer des connexions |
Signer Override |
La bibliothèque d’AWS S3 utilise par défaut le protocole Signature Version 4, mais cette propriété vous permet de spécifier le signataire version 2 pour prendre en charge des services compatibles S3 plus anciens ou même pour ajouter votre propre implémentation de signataire personnalisée. |
Utiliser des versions |
Indique s’il faut utiliser les versions S3, le cas échéant. Si « false », seule la dernière version de chaque objet sera renvoyée. |
Écrire des balises d’objet |
Si « true » est défini, les balises associées à l’objet S3 seront écrites en tant qu’attributs FlowFile |
Écrire des métadonnées utilisateur |
Si la valeur est “True”, les métadonnées définies par l’utilisateur et associées à l’objet S3 seront ajoutées aux attributs/enregistrements de FlowFile |
et-initial-listing-target |
Spécifiez comment la liste initiale doit être gérée. Utilisé par la stratégie « Suivi des entités ». |
et-state-cache |
Les entités répertoriées sont stockées dans le cache spécifié afin que le processeur puisse reprendre la liste après un redémarrage NiFi ou en cas de changement de nœud principal. La stratégie « Suivi des entités » nécessite le suivi des informations de toutes les entités répertoriées au cours de la dernière « fenêtre de suivi ». Pour prendre en charge un grand nombre d’entités, la stratégie utilise DistributedMapCache au lieu d’un état géré. Le format de la clé de cache est “ListedEntities::{processorId}(::{nodeId})”. Si elle suit les entités répertoriées par nœud, la partie facultative “::{nodeId}” est ajoutée pour gérer l’état séparément. Par exemple : clé de cache à l’échelle du cluster =”ListedEntities::8dda2321-0164-1000-50fa-3042fe7d6a7b”, per node cache key =”ListedEntities::8dda2321-0164-1000-50fa-3042fe7d6a7b::nifi-node3” Le contenu du cache stocké est une chaîne JSON au format Gzip. La clé de cache sera supprimée lorsque la configuration de la liste cible est modifiée. Utilisé par la stratégie « Suivi des entités ». |
et-time-window |
Indiquez pendant combien de temps ce processeur doit suivre les entités déjà répertoriées. La stratégie « Suivi des entités » peut sélectionner n’importe quelle entité dont l’horodatage se situe dans la fenêtre temporelle spécifiée. Par exemple, si le paramètre est réglé sur « 30 minutes », toute entité ayant un horodatage au cours des 30 dernières minutes sera la cible de la liste lorsque ce processeur s’exécutera. Une entité répertoriée est considérée comme « nouvelle/mise à jour » et un FlowFile est émis si l’une des conditions suivantes est remplie : 1. n’existe pas dans les entités déjà répertoriées, 2. a un horodatage plus récent que l’entité mise en cache, 3. a une taille différente de l’entité mise en cache. Si l’horodatage d’une entité mise en cache devient plus ancien que la fenêtre temporelle spécifiée, cette entité sera supprimée des entités déjà répertoriées en cache. Utilisé par la stratégie de « Suivi des entités ». |
service proxy-configuration |
Spécifie le Controller Service de configuration proxy pour les requêtes réseau proxy. |
Gestion de l’État¶
Champs d’application |
Description |
|---|---|
CLUSTER |
Après avoir établi le listing de clés, l’horodatage de la clé la plus récente est stocké, ainsi que les clés qui partagent le même horodatage. Cela permet au processeur de dresser uniquement la liste des clés qui ont été ajoutées ou modifiées après cette date lors de la prochaine exécution du processeur. L’état est stocké dans le clustering afin que ce processeur puisse être exécuté sur le nœud principal uniquement et que, si un nouveau nœud principal est sélectionné, le nouveau nœud puisse reprendre là où le précédent s’est arrêté, sans dupliquer les données. |
Relations¶
Nom |
Description |
|---|---|
success |
Les FlowFiles sont routés vers cette relation après avoir été traités correctement. |
Écrit les attributs¶
Nom |
Description |
|---|---|
s3.bucket |
Le nom du compartiment S3 |
s3.region |
La région du compartiment S3 |
filename |
Le nom du fichier |
s3.etag |
Le ETag qui peut être utilisé pour voir si le fichier a été modifié |
s3.isLatest |
Un booléen indiquant s’il s’agit de la dernière version de l’objet |
s3.lastModified |
La dernière heure de modification en millisecondes depuis l’époque, au format d’heure UTC |
s3.length |
La taille de l’objet en octets |
s3.storeClass |
La classe de stockage de l’objet |
s3.version |
La version de l’objet, le cas échéant |
s3.tag.___ |
Si l’option d’écriture des balises d’objets est réglée sur « True », les balises associées à l’objet S3 en cours de listing seront écrites dans les attributs du FlowFile |
s3.user.metadata.___ |
Si l’option d’écriture des métadonnées d’utilisateur est réglée sur « True », les métadonnées définies par l’utilisateur et associées à l’objet S3 en cours de listing seront écrites dans les attributs du FlowFile |