Schemaübersicht

Ein Pub/Sub-Schema ist eine optionale Funktion, mit der Sie das Format des Felds data in einer Pub/Sub-Nachricht erzwingen können.

Mit einem Schema wird ein Vertrag zwischen dem Publisher und dem Abonnenten über das Format der Nachrichten erstellt. Pub/Sub erzwingt dieses Format. Schemas erleichtern die teamübergreifende Nutzung von Datenstreams in Ihrer Organisation, indem sie eine zentrale Zertifizierungsstelle für Nachrichtentypen und Berechtigungen schaffen. Ein Pub/Sub-Nachrichtenschema definiert die Namen und Datentypen für die Felder in einer Nachricht.

Sie können ein Schema erstellen und mit einem Thema verknüpfen, um das Schema für veröffentlichte Nachrichten zu erzwingen. Wenn eine bestimmte Nachricht nicht dem Schema entspricht, wird sie nicht veröffentlicht. Sie können auch zusätzliche Versionen eines Schemas erstellen.

Schematypen

Sie können ein Schema in Pub/Sub mit einem der folgenden Frameworks erstellen:

Nachdem Sie ein Schema erstellt haben, können Sie mehrere Vorgänge für das Schema oder eine Schemaversion ausführen. Beispielsweise können Sie ein Schema löschen oder eine Schemaversion löschen.

Das folgende Schema definiert beispielsweise das Inventar eines Warehouse zuerst im Avro-Format und dann im Protokollzwischenspeicher.

Apache Avro-Format

{
 "type" : "record",
 "name" : "Avro",
 "fields" : [
   {
     "name" : "ProductName",
     "type" : "string",
     "default": ""
   },
   {
     "name" : "SKU",
     "type" : "int",
     "default": 0
   },
   {
     "name" : "InStock",
     "type" : "boolean",
     "default": false
   }
 ]
}

Protokollzwischenspeicherformat

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

Kontingente und Limits für Schemas

Schemas haben die folgenden Limits:

  • Das Schemadefinitionsfeld darf nicht größer als 50 KB sein.

  • Ein Projekt kann maximal 10.000 Schemas haben.

  • Ein einzelnes Schema kann nicht mehr als 20 Versionen haben.

    Informationen zu Schemas und Limits in Bezug auf Pub/Sub finden Sie unter Pub/Sub-Kontingente und -Limits.

Nächste Schritte