Génération automatique d'API de scripts ETL - AWS Glue

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Génération automatique d'API de scripts ETL

L'API de génération de script ETL décrit les types de données et l'API pour générer les scripts ETL dans AWS Glue.

Types de données

CodeGenNode structure

Représente un nœud dans un graphe orienté acyclique (DAG)

Champs
  • IdObligatoire : Chaîne UTF-8, d'une longueur comprise entre 1 et 255 octets, correspondant au Identifier string pattern.

    Identifiant de nœud qui est unique dans le graphe du nœud.

  • NodeTypeObligatoire : chaîne UTF-8.

    Type de nœud.

  • ArgsObligatoire : Un tableau d'objets CodeGenNodeArg, 50 structures maximum.

    Propriétés du nœud, sous forme de paires nom-valeur.

  • LineNumber – Nombre (entier).

    Numéro de ligne du nœud.

CodeGenNodeArg structure

Argument ou propriété d'un nœud.

Champs
  • NameObligatoire : chaîne UTF-8.

    Nom de l'argument ou de la propriété.

  • ValueObligatoire : chaîne UTF-8.

    Valeur de l'argument ou de la propriété.

  • Param – Booléen.

    True si la valeur est utilisée en tant que paramètre.

CodeGenEdge structure

Représente un bord directionnel dans un graphe orienté acyclique (DAG).

Champs
  • SourceObligatoire : Chaîne UTF-8, d'une longueur comprise entre 1 et 255 octets, correspondant au Identifier string pattern.

    ID du nœud où commence le bord.

  • TargetObligatoire : Chaîne UTF-8, d'une longueur comprise entre 1 et 255 octets, correspondant au Identifier string pattern.

    ID du nœud où finit le bord.

  • TargetParameter – Chaîne UTF-8.

    Cible du bord.

Structure de l'emplacement

Emplacement des ressources.

Champs
  • Jdbc – Un tableau d'objets CodeGenNodeArg, 50 structures maximum.

    Emplacement JDBC.

  • S3 – Un tableau d'objets CodeGenNodeArg, 50 structures maximum.

    Emplacement Amazon Simple Storage Service (Amazon S3).

  • DynamoDB – Un tableau d'objets CodeGenNodeArg, 50 structures maximum.

    Emplacement de table Amazon DynamoDB.

CatalogEntry structure

Spécifie une définition de table dans AWS Glue Data Catalog.

Champs
  • DatabaseNameObligatoire : Chaîne UTF-8, d'une longueur comprise entre 1 et 255 octets, correspondant au Single-line string pattern.

    Base de données dans laquelle réside les métadonnées de la table.

  • TableNameObligatoire : Chaîne UTF-8, d'une longueur comprise entre 1 et 255 octets, correspondant au Single-line string pattern.

    Nom de la table en question.

MappingEntry structure

Définit un mappage.

Champs
  • SourceTable – Chaîne UTF-8.

    Nom de la table source.

  • SourcePath – Chaîne UTF-8.

    Le chemin d'accès source .

  • SourceType – Chaîne UTF-8.

    Type source.

  • TargetTable – Chaîne UTF-8.

    Table cible.

  • TargetPath – Chaîne UTF-8.

    Chemin cible.

  • TargetType – Chaîne UTF-8.

    Type de cible.

Opérations

CreateScript action (Python : créer_script)

Transforme un graphe orienté acyclique (DAG) en code.

Demande
  • DagNodes – Un tableau d'objets CodeGenNode.

    Liste de nœuds dans le DAG.

  • DagEdges – Un tableau d'objets CodeGenEdge.

    Liste de bords dans le DAG.

  • Language – Chaîne UTF-8 (valeurs valides : PYTHON | SCALA).

    Langage de programmation du code obtenu à partir du DAG.

Réponse
  • PythonScript – Chaîne UTF-8.

    Script Python généré à partir du DAG.

  • ScalaCode – Chaîne UTF-8.

    Code Scala généré à partir du DAG.

Erreurs
  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException

GetDataflowGraph action (Python : get_dataflow_graph)

Transforme un script Python en graphe orienté acyclique (DAG).

Demande
  • PythonScript – Chaîne UTF-8.

    Script Python à transformer.

Réponse
  • DagNodes – Un tableau d'objets CodeGenNode.

    Liste de nœuds dans le DAG obtenu.

  • DagEdges – Un tableau d'objets CodeGenEdge.

    Liste de bords dans le DAG obtenu.

Erreurs
  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException

GetMapping action (Python : get_mapping)

Crée des mappages.

Demande
  • SourceObligatoire : un objet CatalogEntry.

    Spécifie la table source.

  • Sinks – Un tableau d'objets CatalogEntry.

    Liste des tables cible.

  • Location – Un objet Emplacement.

    Paramètres pour le mappage.

Réponse
  • MappingObligatoire : Un tableau d'objets MappingEntry.

    Liste des mappages pour les cibles spécifiées.

Erreurs
  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException

  • EntityNotFoundException

GetPlan action (Python : get_plan)

Obtient le code pour effectuer un mappage spécifié.

Demande
  • MappingObligatoire : Un tableau d'objets MappingEntry.

    Liste des mappages d'une table source vers des tables cibles.

  • SourceObligatoire : un objet CatalogEntry.

    Table source.

  • Sinks – Un tableau CatalogEntry d'objets.

    Tables cibles.

  • Location – Un objet Emplacement.

    Paramètres pour le mappage.

  • Language – Chaîne UTF-8 (valeurs valides : PYTHON | SCALA).

    Langage de programmation du code pour effectuer le mappage.

  • AdditionalPlanOptionsMap – Tableau de mappage de paires valeur-clé.

    Chaque clé est une chaîne UTF-8.

    Chaque valeur est une chaîne UTF-8.

    Carte pour contenir les paramètres clé-valeur facultatifs supplémentaires.

    Actuellement, ces paires clé-valeur sont prises en charge :

    • inferSchema— Spécifie si le script par défaut généré par une AWS Glue tâche doit inferSchema être défini sur true ou false. Par exemple, pour définir inferSchema sur true, transmettez la paire de clé-valeur suivante :

      --additional-plan-options-map '{"inferSchema":"true"}'

Réponse
  • PythonScript – Chaîne UTF-8.

    Script Python pour effectuer le mappage.

  • ScalaCode – Chaîne UTF-8.

    Code Scala pour effectuer le mappage.

Erreurs
  • InvalidInputException

  • InternalServiceException

  • OperationTimeoutException