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

Structure CodeGenNode

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.

Structure CodeGenNodeArg

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.

Structure CodeGenEdge

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.

Structure CatalogEntry

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.

Structure MappingEntry

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

Action CreateScript (Python : create_script)

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

Requête
  • 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

Action GetDataflowGraph (Python : get_dataflow_graph)

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

Requête
  • 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

Action GetMapping (Python : get_mapping)

Crée des mappages.

Requête
  • 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

Action GetPlan (Python : get_plan)

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

Requête
  • 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 — indique s'il convient de définir inferSchema sur true ou false pour le script par défaut généré par une tâche AWS Glue. 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