Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Fonctionnement du registre des schémas

Mode de mise au point
Fonctionnement du registre des schémas - 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.

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.

Cette section décrit le fonctionnement des processus de sérialisation et de désérialisation dans le registre des schémas.

  1. Enregistrer un schéma : si le schéma n'existe pas encore dans le registre, le schéma peut être enregistré avec un nom de schéma égal au nom de la destination (par exemple, test_topic, test_stream, prod_firehose) ou le producteur peut fournir un nom personnalisé pour le schéma. Les producteurs peuvent également ajouter des paires clé-valeur au schéma sous forme de métadonnées, telles que source : MSK_Kafka_Topic_A, ou appliquer des balises aux schémas lors de la création du schéma. AWS Une fois qu'un schéma est enregistré, le registre de schémas renvoie l'ID de version de schéma au sérialiseur. Si le schéma existe, mais que le sérialiseur utilise une nouvelle version qui n'existe pas, le registre de schémas vérifie que le schéma fait référence à une règle de compatibilité pour s'assurer que la nouvelle version est compatible avant de l'enregistrer en tant que nouvelle version.

    Il existe deux méthodes d'enregistrement d'un schéma : l'enregistrement manuel et l'enregistrement automatique. Vous pouvez enregistrer un schéma manuellement via AWS Glue console ou CLI/SDK.

    Lorsque l'enregistrement automatique est activé dans les paramètres du sérialiseur, l'enregistrement automatique du schéma est effectué. Si la valeur REGISTRY_NAME n'est pas fournie dans les configurations du producteur, l'enregistrement automatique enregistrera alors la nouvelle version du schéma sous le registre par défaut (default-registry). Voir Installation de SerDe bibliothèques pour plus d'informations sur la spécification de la propriété d'enregistrement automatique.

  2. Le sérialiseur valide les enregistrements de données par rapport au schéma : lorsque l'application produisant des données a enregistré son schéma, le sérialiseur du registre de schémas valide l'enregistrement produit par l'application structurée avec les champs et les types de données correspondant à un schéma enregistré. Si le schéma de l'enregistrement ne correspond pas à un schéma enregistré, le sérialiseur renvoie une exception et l'application ne parvient pas à livrer l'enregistrement à la destination.

    Si aucun schéma n'existe et si le nom du schéma n'est pas fourni via les configurations du producteur, le schéma est créé avec le même nom que le nom de la rubrique (s'il s'agit d'Apache Kafka ou d'Amazon MSK) ou le nom du flux (s'il s'agit de Kinesis Data Streams).

    Chaque enregistrement a une définition de schéma et des données. La définition du schéma est interrogée par rapport aux schémas et versions existants dans le registre de schémas.

    Par défaut, les producteurs mettent en cache les définitions des schémas et les versions IDs des schémas enregistrés. Si la définition de version de schéma d'un enregistrement ne correspond pas à ce qui est disponible dans le cache, le producteur tentera de valider le schéma avec le registre de schémas. Si la version du schéma est valide, son ID de version et sa définition seront alors mis en cache localement sur le producteur.

    Vous pouvez ajuster la période de mise en cache par défaut (24 heures) dans les propriétés facultatives du producteur à l'étape 3 de Installation de SerDe bibliothèques.

  3. Sérialiser et livrer des enregistrements : si l'enregistrement est conforme au schéma, le sérialiseur décore chaque enregistrement avec l'ID de version du schéma, sérialise l'enregistrement en fonction du format de données sélectionné (AVRO, JSON, Protobuf ou autres formats prochainement disponibles), compresse l'enregistrement (configuration du producteur facultative) et le livre à la destination.

  4. Les applications consommateur désérialisent les données : les applications consommateur qui lisent ces données utilisent la bibliothèque du désérialiseur du registre de schémas qui analyse l'ID de version du schéma à partir de la charge utile de l'enregistrement.

  5. Le désérialiseur peut demander le schéma à partir du registre de schémas : si c'est la première fois que le désérialiseur a constaté des enregistrements avec un ID de version de schéma particulier, à l'aide de l'ID de version de schéma, il demandera le schéma à partir du registre de schémas et mettra en cache le schéma localement sur l'application consommateur. Si le registre de schémas ne peut pas désérialiser l'enregistrement, l'application consommateur peut journaliser les données de l'enregistrement et continuer, mais aussi arrêter l'application.

  6. Le désérialiseur utilise le schéma pour désérialiser l'enregistrement : lorsque le désérialiseur récupère l'ID de version de schéma auprès du registre de schémas, le désérialiseur décompresse l'enregistrement (si l'enregistrement envoyé par le producteur est compressé) et utilise le schéma pour désérialiser l'enregistrement. L'application traite à présent l'enregistrement.

Note

Chiffrement : vos clients communiquent avec le registre de schémas via des appels d'API qui chiffrent les données en transit à l'aide du chiffrement TLS sur HTTPS. Les schémas stockés dans le registre des schémas sont toujours chiffrés au repos à l'aide d'une clé gérée par le service AWS Key Management Service ()AWS KMS.

Note

Autorisation de l'utilisateur : le registre de schémas prend en charge les politiques IAM basées sur l'identité.

Rubrique suivante :

Premiers pas

Rubrique précédente :

AWS Glue Registre de schémas
ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.