스키마 개요

Pub/Sub 스키마는 Pub/Sub 메시지에서 데이터 필드 형식을 적용하는 데 사용할 수 있는 선택적 기능입니다.

스키마는 메시지 형식에 대한 게시자와 구독자 간의 계약을 만듭니다. Pub/Sub는 이 형식을 적용합니다. 스키마는 메시지 유형 및 권한을 위한 중앙 권한을 만들어 조직 내 데이터 스트림의 팀 간 소비를 용이하게 합니다. Pub/Sub 메시지 스키마는 메시지의 필드 이름 및 데이터 유형을 정의합니다.

스키마를 만들고 주제와 연결하여 게시된 메시지에 스키마를 적용할 수 있습니다. 특정 메시지가 스키마를 준수하지 않으면 메시지가 게시되지 않습니다. 스키마의 추가 버전을 만들 수도 있습니다.

스키마 유형

다음 프레임워크 중 하나를 사용하여 Pub/Sub에 스키마를 만들 수 있습니다.

스키마를 만든 후 스키마 또는 스키마 버전에서 여러 작업을 수행할 수 있습니다. 예를 들어 스키마를 삭제하거나 스키마 버전을 삭제할 수 있습니다.

예를 들어 다음 스키마는 웨어하우스 인벤토리를 Avro 형식으로 먼저 정의한 후 프로토콜 버퍼 형식으로 다시 정의합니다.

Apache Avro 형식

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

프로토콜 버퍼 형식

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

스키마 할당량 및 한도

스키마에는 다음과 같은 제한이 있습니다.

  • 스키마 정의 필드는 크기가 50KB를 초과할 수 없습니다.

  • 프로젝트는 최대 10,000개의 스키마를 포함할 수 있습니다.

  • 단일 스키마는 20개 넘는 버전을 포함할 수 없습니다.

    Pub/Sub와 관련된 스키마 및 한도에 대한 자세한 내용은 Pub/Sub 할당량 및 한도를 참조하세요.

다음 단계