Un esquema de Pub/Sub es una función opcional que puedes usar para aplicar el formato del campo data en un mensaje de Pub/Sub.
Un esquema crea un contrato entre el publicador y el suscriptor sobre la formato de los mensajes. Pub/Sub aplica este formato de manera forzosa. Los esquemas facilitan el consumo de flujos de datos entre equipos en tu organización mediante la creación de una autoridad central para los tipos de mensajes y permisos. Un esquema de mensajes de Pub/Sub define los nombres y tipos de datos para los campos de un mensaje.
Puedes crear un esquema y asociarlo con un tema para aplicar el esquema para los mensajes publicados. Si un mensaje específico no no cumplen con el esquema, el mensaje no se publica. También puedes crear revisiones adicionales para un esquema.
Tipos de esquemas
Puedes crear un esquema en Pub/Sub con uno de los siguientes marcos de trabajo:
Por ejemplo, el siguiente esquema define el inventario de un almacén, primero en el formato Avro y, luego, en el formato de búfer de protocolo.
Formato Apache Avro
{
"type" : "record",
"name" : "Avro",
"fields" : [
{
"name" : "ProductName",
"type" : "string",
"default": ""
},
{
"name" : "SKU",
"type" : "int",
"default": 0
},
{
"name" : "InStock",
"type" : "boolean",
"default": false
}
]
}
Formato del búfer de protocolo
syntax = "proto3";
message ProtocolBuffer {
string product_name = 1;
int32 SKU = 2;
bool in_stock = 3;
}
Información importante sobre los esquemas
La siguiente es información importante sobre la creación y administrar esquemas de Pub/Sub.
Para que un esquema funcione con Pub/Sub, solo debes definir un tipo de nivel superior. Declaraciones de importación que hacen referencia a otros tipos no son compatibles.
Puedes asociar el mismo esquema a varios temas.
Puedes probar de forma manual si un mensaje se valida según un esquema.
Cuotas y límites para esquemas
Los esquemas tienen los siguientes límites:
El campo de definición del esquema no puede superar los 300 KB de tamaño.
Un proyecto puede tener un máximo de 10,000 esquemas.
Un mismo esquema no puede tener más de 20 revisiones.
Para obtener información sobre los esquemas y los límites relacionados con Pub/Sub, consulta Cuotas y límites de Pub/Sub.