---
sourceDocument: Yokohama データと自動化
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/yokohama/integrate-applications

 Release :

    - yokohama

ft:locale :

    - ja-JP

ft:publication_title :

    - Yokohama データと自動化

ft:clusterId :

    - crint

bundleId :

    - crint

workflow :

    - Creator


---

# ストリームコネクトのスキーマ管理

# ストリームコネクトのスキーマ管理 {#ariaid-title1}

* リリースバージョン: Yokohama
* 
* 更新日 2025年01月30日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：4分

スキーマをインポートして作成し、Apache Avro 形式でメッセージを送受信します。Avro 形式を使用することで、ペイロードのサイズを減らし、ローカルの Kafka インスタンスへの統合を簡素化できます。

Avro は、スキーマを使用してエンコードされたデータを構造化するオープンソースのデータシリアル化システムです。Avro スキーマを使用して、データをプレーンテキストの JSON から Avro バイナリ形式に変換したり、その逆を行ったりすることができます。スキーマを ServiceNow に保存することで、ストリームコネクトプロデューサーとコンシューマーがスキーマを使用して Avro メッセージをシリアル化できます。

次の画像は、ストリームコネクトのスキーマ管理の概要を示しています。スキーマレジストリに保存されるスキーマを使用して、プロデューサーとコンシューマーのメッセージをプレーンテキストから Avro 形式に変換したり、その逆を行ったりすることができます。

## スキーマ {#schema-management__section_t3r_xzx_fbc}

Confluent レジストリからスキーマをインポートするか、または JSON ファイルをアップロードするか、スキーマを JSON 形式の文字列として直接入力して独自のスタンドアロンスキーマを作成できます。

スキーマがインポートまたは作成されると、Confluent スキーマとスタンドアロンスキーマの両方が保存されるストリームコネクトスキーマ \[stream_connect_schema\] テーブルで確認できます。さらに、Confluent スキーマは Confluent ストリームコネクトスキーマ \[confluent_stream_connect_schema\] テーブルでも確認できます。スタンドアロンスキーマは、スタンドアロンストリームコネクトスキーマ \[standalone_stream_connect_schema\] テーブルにあります。

すべてのスキーマには、スキーマのグローバルな一意の識別子であるスキーマ ID があります。Confluent スキーマの場合、スキーマ ID は Confluent レジストリからインポートされます。スタンドアロンスキーマの場合、スキーマ ID はローカルで生成され、インスタンス上で一意です。デフォルトでは、生成されるスキーマ ID の値は、インスタンスで使用可能な最大スキーマ ID の次の値です。たとえば、スキーマの ID 番号が 1 から 5 の場合、次に作成するスキーマのスキーマ ID は 6 になります。このデフォルト値は変更できます。

スキーマ ID はレジストリごとに一意です。たとえば、2 つのスキーマは、異なるレジストリにある限り、両方とも 1 つの ID を持つことができます。

## スキーマレジストリ {#schema-management__section_qln_yzx_fbc}

すべてのスキーマはレジストリに属します。ServiceNow のスキーマレジストリには、Confluent スキーマレジストリとスタンドアロンスキーマレジストリの 2 種類があります。

どちらのスキーマレジストリにも、\[更新セット内で追跡\] オプションがあります。このオプションを有効にすると、そのレジストリ内のスキーマが更新セットに保存されます。スキーマを更新セットに保存すると、ある環境から別の環境に移行できるようになります。移行する環境によってはスキーマ ID が変わる可能性があるため、このオプションは、Confluent スキーマレジストリではデフォルトでオフになっています。スタンドアロンスキーマレジストリでこのオプションが有効になっているのは、スキーマを手動で作成している場合、移行する環境によってスキーマ ID が変わる可能性が低いためです。いずれかのレジストリのデフォルト設定を変更するには、 すべて統合ハブスキーマレジストリ、レジストリを選択し、\[ 更新セット内で追跡\] オプションを変更します。

## ワイヤレベルのメッセージ形式 {#schema-management__section_agb_y3y_jbc}

ServiceNow では、相互運用性を求めて、他のシステムで使用されるものと同様のワイヤレベルのメッセージ形式を使用します。最初のバイトは 0 に設定され、次の 4 バイトはスキーマ ID に使用されます。残りのバイトは、Avro 形式でシリアル化されたデータに使用されます。

|-|-|
| バイト 0 | マジックバイト。 |
| バイト 1 ～ 4 | スキーマ ID。 |
| 残りのバイト | Avro 形式でシリアル化されたデータ。 |
[ ]

{#schema-management__table_rhd_vjy_jbc}

## プロデューサーとコンシューマー {#schema-management__section_sr5_jph_gbc}

ストリームコネクトのプロデューサーとコンシューマーは、Avro 形式を使用するよう構成できます。

プロデューサーを構成する場合は、使用するスキーマを指定するだけです。その後、プロデューサーを実行すると、メッセージペイロードが JSON で生成され、指定されたスキーマを使用して Avro 形式に自動的に変換されます。プロデューサーの詳細については、「」または「ProducerV2 API」を参照してください。

コンシューマーの構成も同様です。シリアル化形式を \[エンコード済み\] に指定し、スキーマレジストリを選択します。コンシューマーが Avro 形式でメッセージを受信すると、メッセージで受信したスキーマ ID のスキーマに従って、自動的に JSON に変換されます。詳細については、Kafka メッセージトリガーに関する情報、または [ETL](https://servicenow-prod.fluidtopics.net/dZ5b~GXAAN8ySCpAwoq2gQ "Kafka 環境からデータをインポートし、既存の強力な変換エンジン (RTE) 構成を使用してそのデータを処理します。")、[変換マップ](https://servicenow-prod.fluidtopics.net/3JMNzrXD~NyZpdvvVtyThw "既存の変換マップ構成を使用して、Kafka 環境からデータをインポートして処理します。")、[スクリプト](https://servicenow-prod.fluidtopics.net/VPJ2dGbA2xt~6YeEFMXHxA "スクリプトを使用して、Kafka 環境からデータをインポートして処理します。")の各コンシューマーを参照してください。

## プラグイン {#schema-management__section_hg2_2ph_gbc}

スキーマ管理機能には、ServiceNow Stream Connect Installer \[com.glide.hub.stream_connect.installer\] プラグインが必要です。
* **[Confluent レジストリからのスキーマのインポート](https://servicenow-prod.fluidtopics.net/FFy66YiP5OT3qY3EMaCbJw)**   
  Confluent レジストリからスキーマをインポートして、ストリームコネクトのプロデューサーとコンシューマーが Apache Avro 形式で Kafka メッセージを送受信できるようにします。
* **[ストリームコネクトでスタンドアロンスキーマを作成](https://servicenow-prod.fluidtopics.net/9Xu7ENwu_4RkTPaW0hWHOg)**   
  スキーマを作成して、ストリームコネクトのプロデューサーとコンシューマーが Apache Avro 形式で Kafka メッセージを送受信できるようにします。

