Un esquema de Pub/Sub es una función opcional que puedes usar para aplicar el formato del campo data de un mensaje de Pub/Sub.
Un esquema crea un contrato entre el editor y el suscriptor sobre el formato de los mensajes. Pub/Sub aplica este formato. Los esquemas facilitan el consumo entre equipos de los flujos de datos de tu organización, ya que crean una autoridad central para los tipos de mensajes y los permisos. Un esquema de mensaje de Pub/Sub define los nombres y los tipos de datos de los campos de un mensaje.
Puedes crear un esquema y asociarlo a un tema para aplicar el esquema a los mensajes publicados. Si un mensaje específico no se ajusta al esquema, no se publica. También puedes crear revisiones adicionales de un esquema.
Tipos de esquemas
Puedes crear un esquema en Pub/Sub con uno de los siguientes frameworks:
Por ejemplo, el siguiente esquema define el inventario de un almacén, primero en formato Avro y, después, en formato Protocol Buffer.
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 de 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
A continuación, se incluye información importante sobre cómo crear y gestionar esquemas de Pub/Sub.
Para que un esquema funcione con Pub/Sub, solo debe definir un tipo de nivel superior. No se admiten instrucciones de importación que hagan referencia a otros tipos.
Puede asociar el mismo esquema a varios temas.
Puedes probar manualmente si un mensaje se valida con un esquema.
No incluyas información sensible, como información personal identificable (IPI) o datos de seguridad, en los nombres de los campos de tu esquema.
Cuotas y límites de los esquemas
Los esquemas tienen los siguientes límites:
El tamaño del campo de definición de esquema no puede superar los 300 KB.
Un proyecto puede tener un máximo de 10.000 esquemas.
Un solo 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.