Un schéma Pub/Sub est une fonctionnalité facultative que vous pouvez utiliser pour appliquer le format du champ de données dans un message Pub/Sub.
Un schéma crée un contrat entre l'éditeur et l'abonné concernant le format des messages. Pub/Sub applique ce format. Les schémas facilitent la consommation des flux de données au sein de votre organisation en créant une autorité centrale pour les types de messages et les autorisations. Un schéma de message Pub/Sub définit les noms et les types de données des champs d'un message.
Vous pouvez créer un schéma et l'associer à un sujet pour appliquer le schéma aux messages publiés. Si un message spécifique n'est pas conforme au schéma, il n'est pas publié. Vous pouvez également créer des révisions supplémentaires pour un schéma.
Types de schémas
Vous pouvez créer un schéma dans Pub/Sub à l'aide de l'un des frameworks suivants :
Par exemple, le schéma suivant définit l'inventaire d'un entrepôt, d'abord au format Avro, puis au format de tampon de protocole.
Format Apache Avro
{
"type" : "record",
"name" : "Avro",
"fields" : [
{
"name" : "ProductName",
"type" : "string",
"default": ""
},
{
"name" : "SKU",
"type" : "int",
"default": 0
},
{
"name" : "InStock",
"type" : "boolean",
"default": false
}
]
}
Format de tampon de protocole
syntax = "proto3";
message ProtocolBuffer {
string product_name = 1;
int32 SKU = 2;
bool in_stock = 3;
}
Informations importantes concernant les schémas
Voici quelques informations importantes concernant la création et la gestion des schémas Pub/Sub.
Pour qu'un schéma fonctionne avec Pub/Sub, vous ne devez définir que un seul type de premier niveau type. Les instructions d'importation qui référencent d'autres types ne sont pas acceptées.
Vous pouvez associer le même schéma à plusieurs sujets.
Vous pouvez tester manuellement si un message est validé par rapport à un schéma.
N'incluez pas d'informations sensibles telles que des informations permettant d'identifier personnellement l'utilisateur ou des données de sécurité dans les noms de vos champs de schéma.
Quotas et limites pour les schémas
Les schémas sont soumis aux limites suivantes :
La taille du champ de définition du schéma ne peut pas dépasser 300 Ko.
Un projet peut contenir un maximum de 10 000 schémas.
Un même schéma ne peut pas comporter plus de 20 révisions.
Pour en savoir plus sur les schémas et les limites associés à Pub/Sub, consultez la section Quotas et limites de Pub/Sub.