Visão geral do esquema

Um esquema do Pub/Sub é um recurso opcional que pode ser usado para impor o formato do campo data em uma mensagem do Pub/Sub.

Um esquema cria um contrato entre o editor e o assinante sobre o formato das mensagens. O Pub/Sub aplica esse formato. Os esquemas facilitam o consumo entre equipes de fluxos de dados na sua organização ao criar uma autoridade central para tipos de mensagens e permissões. Um esquema de mensagens do Pub/Sub define os nomes e os tipos de dados dos campos em uma mensagem.

É possível criar um esquema e associá-lo a um tópico para aplicar o esquema a mensagens publicadas. Se uma mensagem específica não estiver em conformidade com o esquema, ela não será publicada. Também é possível criar revisões adicionais para um esquema.

Tipos de esquemas

É possível criar um esquema no Pub/Sub usando um dos seguintes frameworks:

Depois de criar um esquema, é possível executar várias operações nele ou em uma revisão. Por exemplo, é possível excluir um esquema ou excluir uma revisão de esquema.

Por exemplo, o esquema a seguir define o inventário de um warehouse, primeiro no formato Avro e depois no formato Buffer 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 do buffer de protocolo

syntax = "proto3";
message ProtocolBuffer {
  string product_name = 1;
  int32 SKU = 2;
  bool in_stock = 3;
}

Cotas e limites para esquemas

Os esquemas têm os seguintes limites:

  • O campo de definição do esquema não pode exceder 50 KB.

  • Um projeto pode ter no máximo 10.000 esquemas.

  • Um esquema não pode ter mais de 20 revisões.

    Para informações sobre esquemas e limites relacionados ao Pub/Sub, consulte Cotas e limites do Pub/Sub.

A seguir