Descripción general del esquema

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 el 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 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, el mensaje no se publica. También puedes crear revisiones adicionales de un esquema.

Tipos de esquemas

Puedes crear un esquema en Pub/Sub mediante uno de los siguientes frameworks:

Después de crear un esquema, puedes realizar varias operaciones en él o una revisión. Por ejemplo, puedes borrar un esquema o borrar una revisión del esquema.

Por ejemplo, en el siguiente esquema, se 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;
}

Cuotas y límites para esquemas

Los esquemas tienen los siguientes límites:

  • El campo de definición de esquema no puede superar los 50 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 más información sobre los esquemas y límites relacionados con Pub/Sub, consulta Cuotas y límites de Pub/Sub.

¿Qué sigue?