Métadonnées de connexion et API de prévisualisation - AWS Glue

Métadonnées de connexion et API de prévisualisation

Les API de connexion suivantes décrivent les opérations permettant de décrire les métadonnées de connexion.

Types de données

Structure de l’entité

Entité prise en charge par un ConnectionType donné.

Champs
  • EntityName – Chaîne UTF-8.

    Le nom de l’entité.

  • Label – Chaîne UTF-8.

    Étiquette utilisée pour l’entité.

  • IsParentEntity : booléen.

    Valeur booléenne qui permet de déterminer si des sous-objets peuvent être répertoriés.

  • Description – Chaîne UTF-8.

    Une description de l’entité.

  • Category – Chaîne UTF-8.

    Type d’entités présentes dans la réponse. Cette valeur dépend de la connexion source. Par exemple, il s’agit de SObjects pour Salesforce et de databases, schemas ou tables pour des sources telles qu’Amazon Redshift.

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

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

    Chaque valeur est une chaîne UTF-8.

    Carte facultative de clés qui peuvent être renvoyées pour une entité par un connecteur.

Structure de champ

L’objet Field contient des informations sur les différentes propriétés associées à un champ dans le connecteur.

Champs
  • FieldName – Chaîne UTF-8.

    Un identifiant unique du champ.

  • Label – Chaîne UTF-8.

    Une étiquette lisible pour le champ.

  • Description – Chaîne UTF-8.

    Une description du champ.

  • FieldType – Chaîne UTF-8 (valeurs valides: INT | SMALLINT | BIGINT | FLOAT | LONG | DATE | BOOLEAN | MAP | ARRAY | STRING | TIMESTAMP | DECIMAL | BYTE | SHORT | DOUBLE | STRUCT).

    Type de données dans le champ.

  • IsPrimaryKey : booléen.

    Indique si ce champ peut être utilisé comme clé primaire pour l’entité donnée.

  • IsNullable : booléen.

    Indique si ce champ peut autoriser les valeurs nulles ou non.

  • IsRetrievable : booléen.

    Indique si ce champ peut être ajouté dans la clause Select de la requête SQL ou s’il peut être extrait ou non.

  • IsFilterable : booléen.

    Indique si ce champ peut être utilisé dans une clause de filtre (clause WHERE) d’une instruction SQL lors de l’interrogation de données.

  • IsPartitionable : booléen.

    Indique si un champ donné peut être utilisé pour partitionner la requête envoyée à SaaS.

  • IsCreateable : booléen.

    Indique si ce champ peut être créé dans le cadre d’une écriture de destination.

  • IsUpdateable : booléen.

    Indique si ce champ peut être mis à jour dans le cadre d’une écriture de destination.

  • IsUpsertable : booléen.

    Indique si ce champ peut faire l’objet d’un upsert dans le cadre d’une écriture de destination.

  • IsDefaultOnCreate : booléen.

    Indique si ce champ est automatiquement renseigné lors de la création de l’objet, par exemple s’il est créé au niveau de l’horodatage.

  • SupportedValues – Tableau de chaînes UTF-8.

    Liste des valeurs prises en charge pour le champ.

  • SupportedFilterOperators – Tableau de chaînes UTF-8.

    Indique les opérateurs de filtre de prise en charge pour ce champ.

  • ParentField – Chaîne UTF-8.

    Nom de champ parent pour un champ imbriqué.

  • NativeDataType – Chaîne UTF-8.

    Type de données renvoyé par l’API SaaS, tel que « picklist » ou « textarea » de Salesforce.

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

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

    Chaque valeur est une chaîne UTF-8.

    Carte facultative des clés qui peuvent être renvoyées.

Opérations

Action ListEntities (Python : list_entities)

Renvoie les entités disponibles prises en charge par le type de connexion.

Demande
  • ConnectionName – Chaîne UTF-8, d’une longueur comprise entre 1 et 255 octets, correspondant au Single-line string pattern.

    Nom de la connexion dont les informations d’identification sont requises pour interroger n’importe quel type de connexion.

  • CatalogId – Chaîne d’ID de catalogue, d’une longueur comprise entre 1 et 255 octets, correspondant au Single-line string pattern.

    ID du catalogue contenant la connexion. Il peut avoir la valeur null. Par défaut, l’ID de compte AWS est l’ID du catalogue.

  • ParentEntityName – Chaîne UTF-8.

    Nom de l’entité parent pour laquelle vous souhaitez répertorier les enfants. Ce paramètre utilise un chemin entièrement qualifié de l’entité afin de répertorier les entités enfant.

  • NextToken – Chaîne UTF-8, d’une longueur comprise entre 1 et 2048 octets, correspondant au Custom string pattern #11.

    Jeton de continuation, inclus s’il s’agit d’un appel de continuation.

  • DataStoreApiVersion – Chaîne UTF-8, d’une longueur comprise entre 1 et 256 octets, correspondant au Custom string pattern #23.

    Version d’API du connecteur SaaS.

Réponse
  • Entities : un tableau d’objets Entité.

    Liste d’objets Entity.

  • NextToken – Chaîne UTF-8, d’une longueur comprise entre 1 et 2048 octets, correspondant au Custom string pattern #11.

    Un jeton de continuation, présent si le segment actuel n’est pas le dernier.

Erreurs
  • EntityNotFoundException

  • OperationTimeoutException

  • InvalidInputException

  • GlueEncryptionException

  • ValidationException

  • FederationSourceException

  • AccessDeniedException

Action DescribeEntity (Python : describe_entity)

Fournit des détails concernant l’entité utilisée avec le type de connexion, avec une description du modèle de données pour chaque champ de l’entité sélectionnée.

La réponse inclut tous les champs qui constituent l’entité.

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

    Nom de la connexion qui contient les informations d’identification du type de connexion.

  • CatalogId – Chaîne d’ID de catalogue, d’une longueur comprise entre 1 et 255 octets, correspondant au Single-line string pattern.

    ID du catalogue contenant la connexion. Il peut avoir la valeur null. Par défaut, l’ID de compte AWS est l’ID du catalogue.

  • EntityNameObligatoire : chaîne UTF-8.

    Nom de l’entité que vous souhaitez décrire à partir du type de connexion.

  • NextToken – Chaîne UTF-8, d’une longueur comprise entre 1 et 2048 octets, correspondant au Custom string pattern #11.

    Jeton de continuation, inclus s’il s’agit d’un appel de continuation.

  • DataStoreApiVersion – Chaîne UTF-8, d’une longueur comprise entre 1 et 256 octets, correspondant au Custom string pattern #23.

    Version de l’API utilisée pour l’entrepôt de données.

Réponse
  • Fields : un tableau d’objets Champ.

    Décrit les champs de cette entité de connecteur. Il s’agit de la liste des objets Field. Field est très similaire à une colonne dans une base de données. L’objet Field contient des informations sur les différentes propriétés associées aux champs dans le connecteur.

  • NextToken – Chaîne UTF-8, d’une longueur comprise entre 1 et 2048 octets, correspondant au Custom string pattern #11.

    Un jeton de continuation, présent si le segment actuel n’est pas le dernier.

Erreurs
  • EntityNotFoundException

  • OperationTimeoutException

  • InvalidInputException

  • GlueEncryptionException

  • ValidationException

  • FederationSourceException

  • AccessDeniedException

Action GetEntityRecords (Python : get_entity_records)

Cette API est utilisée pour interroger les données de prévisualisation à partir d’un type de connexion donné ou d’un Catalogue de données AWS Glue natif basé sur Amazon S3.

Renvoie les enregistrements sous forme de tableau de blobs JSON. Chaque enregistrement est formaté à l’aide de Jackson JsonNode en fonction du type de champ défini par l’API DescribeEntity.

Les connecteurs Spark génèrent des schémas selon le même mappage de type de données que dans l’API DescribeEntity. Les connecteurs Spark convertissent les données en types de données appropriés correspondant au schéma lors du renvoi de lignes.

Demande
  • ConnectionName – Chaîne UTF-8, d’une longueur comprise entre 1 et 255 octets, correspondant au Single-line string pattern.

    Nom de la connexion qui contient les informations d’identification du type de connexion.

  • CatalogId – Chaîne d’ID de catalogue, d’une longueur comprise entre 1 et 255 octets, correspondant au Single-line string pattern.

    ID du catalogue contenant la connexion. Il peut avoir la valeur null. Par défaut, l’ID de compte AWS est l’ID du catalogue.

  • EntityNameObligatoire : chaîne UTF-8.

    Nom de l’entité pour laquelle nous souhaitons interroger les données de prévisualisation à partir du type de connexion donné.

  • NextToken – Chaîne UTF-8, d’une longueur comprise entre 1 et 2048 octets, correspondant au Custom string pattern #11.

    Jeton de continuation, inclus s’il s’agit d’un appel de continuation.

  • DataStoreApiVersion – Chaîne UTF-8, d’une longueur comprise entre 1 et 256 octets, correspondant au Custom string pattern #23.

    Version d’API du connecteur SaaS.

  • ConnectionOptions – Tableau de mappage de paires clé-valeur, 100 paires au maximum.

    Chaque clé est une chaîne UTF-8, d’une longueur comprise entre 1 et 256 octets, correspondant au Custom string pattern #18.

    Chaque valeur est une chaîne UTF-8, d’une longueur comprise entre 1 et 256 octets, correspondant au Custom string pattern #17.

    Options de connecteur requises pour interroger les données.

  • FilterPredicate – Chaîne UTF-8, d’une longueur comprise entre 1 et 100000 octets.

    Un prédicat de filtre que vous pouvez appliquer dans la demande de requête.

  • LimitObligatoire : nombre (long), compris entre 1 et 1 000.

    Limite le nombre d’enregistrements récupérés avec la demande.

  • OrderBy – Chaîne UTF-8.

    Paramètre qui ordonne les données de prévisualisation de la réponse.

  • SelectedFields – Tableau de chaînes UTF-8, avec 1 chaîne minimum et 1 000 chaînes maximum.

    Liste des champs que nous souhaitons récupérer dans le cadre des données de prévisualisation.

Réponse
  • Records : tableau d’une structure.

    Liste des objets demandés.

  • NextToken – Chaîne UTF-8, d’une longueur comprise entre 1 et 2048 octets, correspondant au Custom string pattern #11.

    Un jeton de continuation, présent si le segment actuel n’est pas le dernier.

Erreurs
  • EntityNotFoundException

  • OperationTimeoutException

  • InvalidInputException

  • GlueEncryptionException

  • ValidationException

  • FederationSourceException

  • AccessDeniedException