Transformers FME: 2025.0

Categories
Base de données
Exécution
Related Transformers
FeatureReader
SchemaMapper

SchemaScanner

Produit un élément de schéma représentant la définition du type d'entité pour chaque groupe d'entités de données d'entrée.

Aller à la configuration

Cas d'utilisations typiques

  • Génération d'une entité de schéma pour les données destination dynamiques

  • Génération d'entités de schéma à des fins de comparaison pour la validation et la dérive des schémas

  • Générer des schémas après avoir fusionné ou manipulé des jeux de données

Comment fonctionne-t-il ?

SchemaScanner reçoit les entités et détermine leur schéma en recherchant les noms d'attributs et les types de données, sur la base de la structure et des valeurs d'attributs des entités.

Il analysera soit toutes les entités, soit un nombre spécifié d'entre elles, et peut exclure certains attributs en fonction des noms, tels que les attributs spécifiques au format ou les attributs internes de FME.

Le schéma résultant est édité sous la forme d'une nouvelle entité de schéma, qui possède une forme spécifique d'attribut de liste et sort via le port <Schema>. Elle reçoit également un attribut et une valeur spéciaux : fme_schema_handling = 'schema_only', qui indique à un Writer dynamique d'utiliser cette entité en tant que schéma et de la supprimer ensuite de la sortie.

Les entités d'entrée originales sont transmises via le port de sortie Output.

L'ordre de sortie des entités de schéma par rapport aux données (entités d'entrée) peut être contrôlé à l'aide de l'option Générer le schéma avant les entités de données. Pour une utilisation avec des données destinations dynamiques, les entités de schéma doivent être éditées en premier.

Génération d'attribut

Les schémas peuvent être générés avec des types de données standard ou explicitement définis, en fonction des paramètres de types de données Numerique et Chaîne de caractères :

  • Types standards produisent des types tels que fme_real64 , fme_int8 et fme_buffer.

  • Précision et largeur explicites produit des données comme :

    • fme_decimal(a,b) a est le nombre de chiffres avant la virgule et b le nombre après (précision).

    • fme_varchar(a) a est le nombre maximum de caractères dans une chaîne de caractères.

Lors de l'utilisation de précision et largeur explicites, il convient d'examiner toutes les entités (nombre d'entités à analyser) afin de s'assurer que toutes les longueurs de valeurs d'attributs existantes sont prises en compte.

Travailler avec des dates

Les dates et heures peuvent être analysées en option.

Si les chaînes correspondent au format de date FME %Y%m%d%H%M%S, elles peuvent être recherchées à l'aide de la fonction Détecter les dates FME.

Pour rechercher les chaînes qui correspondent à un autre format de date ou d'heure, utilisez l'option Convertir le format de date en entrée en date FME. Notez que cette option n'est disponible que si l'option Générer le schéma avant les entités de données est réglée sur Oui.

Voir Formats standards FME d'heure et de date pour les détails de formatage.

Exclure des attributs

SchemaScanner traite tous les attributs des entités entrantes, y compris les attributs fme et format. Il est possible d'ignorer des attributs à l'aide du paramètre Ignorer les attributs contenant.

Entrez une expression régulière, et les attributs correspondants seront ignorés.

Par exemple, si les données sources sont de type CSV, vous pouvez utiliser l'expression régulière ^fme_|^multi_|^csv_ pour ignorer tous les attributs commençant par fme_, multi_, ou csv_.

Entités schéma

Les entités de schéma peuvent être utilisées pour stocker ou transmettre des structures de schéma - à des données destinations, par exemple. Le schéma est stocké dans un attribut de liste nommé attribut , comme indiqué ici.

Chaque attribut a un nom et un type de données fme_data_type - notez que l'attribut LAT a un type de données correspondant fme_real64 .

Les types de données sont des types de données internes à FME.

Notes

  • Les entités de schéma peuvent également être générées manuellement, ou en utilisant les options de schéma de FeatureReader. Deux Readers génèrent également des schémas : le Reader Schema (Any Format) et le Reader Schema (From Table).
  • Lorsque le SchemaScanner est utilisé avec un Writer dynamique, le paramètre Générer le schéma avant les entités de données doit être réglé sur Oui, afin que le schéma arrive au Writer avant les entités de données.

Configuration

Ports d'entrée

Ports de sortie

Paramètres

Éditer les paramètres des Transformers

Les paramètres du Transformer peuvent être définis en saisissant directement des valeurs, en utilisant des expressions ou en faisant référence à d'autres éléments de l'espace de travail tels que des valeurs d'attributs ou des paramètres utilisateur. Divers éditeurs et menus contextuels sont disponibles pour vous aider. Pour voir ce qui est disponible, cliquez sur à côté du paramètre concerné.

Pour plus d'information, consulter la section Options des Transformers.

Références

Comportement

Basé sur le regroupement

Stockage des entités

Si l'option Générer les entités de schéma avant les données est Oui, le Transformers bloquera toutes les entités des données entrantes. Cela est généralement nécessaire si vous utilisez l'entité schéma avec un Writer dynamique.

L'option Nombre d'entités à analyser bloque également les entités de données - jusqu'au nombre d'entités sélectionné (ou toutes les entités, si l'option est laissée vide).

Dépendances Aucun
Alias  
Historique  

FME Community

FME Community dispose d'une mine de connaissances sur FME, avec plus de 20 000 membres actifs dans le monde entier. Obtenez de l'aide sur FME, partagez vos connaissances et entrez en contact avec des utilisateurs du monde entier.

Voir tous les résultats à propos de ce Transformer sur FME Community.

 

Examples may contain information licensed under the Open Government Licence – Vancouver, Open Government Licence - British Columbia, and/or Open Government Licence – Canada.