JSON → Apache Avro (.avsc)
Apache Avro & Confluent Schema Registry

JSON to Apache Avro Schema (.avsc) Converter

JSONペイロードから、名前空間、プリミティブ型、論理型、null許容共用体型、スキーマ進化ルールを備えた本番仕様のApache Avroスキーマ(.avsc)定義を生成します。

100% クライアント側プライバシー
100% クライアント側処理
プリセット:
Avroコンパイラオプション&スキーマレジストリ設定
OrderFulfillmentEvent•smart
フィールド定義
入力21 fields
{
"type": "record",
"name": "OrderFulfillmentEvent",
"namespace": "com.ecommerce.events.orders",
"doc": "Standard Avro event schema compiled from JSON payload for OrderFulfillmentEvent",
"fields": [
{
"name": "eventId",
"type": {
"type": "string",
"logicalType": "uuid"
},
"doc": "Standard UUID identifier for eventId",
"default": "00000000-0000-0000-0000-000000000000"
},
{
"name": "orderNumber",
"type": "string",
"doc": "Text string for orderNumber",
"default": ""
},
{
"name": "eventType",
"type": "string",
"doc": "Text string for eventType",
"default": ""
},
{
"name": "occurredAt",
"type": {
"type": "long",
"logicalType": "timestamp-millis"
},
"doc": "UTC timestamp (milliseconds since epoch) for occurredAt",
"default": 0
},
{
"name": "customer",
"type": {
"type": "map",
"values": "string"
},
"doc": "Associative string-keyed map for customer",
"default": {}
},
{
"name": "shippingAddress",
"type": {
"type": "map",
"values": "string"
},
"doc": "Associative string-keyed map for shippingAddress",
"default": {}
},
{
"name": "lineItems",
"type": {
"type": "array",
"items": {
"type": "record",
"name": "LineItemsItem",
"namespace": "com.ecommerce.events.orders",
"doc": "Standard Avro event schema compiled from JSON payload for LineItemsItem",
"fields": [
{
"name": "sku",
"type": "string",
"doc": "Text string for sku",
"default": ""
},
{
"name": "productName",
"type": "string",
"doc": "Text string for productName",
"default": ""
},
{
"name": "quantity",
"type": "int",
"doc": "Numeric value (int) for quantity",
"default": 0
},
{
"name": "unitPrice",
"type": "double",
"doc": "Numeric value (double) for unitPrice",
"default": 0
},
{
"name": "currency",
"type": "string",
"doc": "Text string for currency",
"default": ""
},
{
"name": "isTaxExempt",
"type": "boolean",
"doc": "Boolean flag for isTaxExempt",
"default": false
}
]
}
},
"doc": "List of LineItemsItem records for lineItems",
"default": []
},
{
"name": "subtotal",
"type": "double",
"doc": "Numeric value (double) for subtotal",
"default": 0
},
{
"name": "taxAmount",
"type": "double",
"doc": "Numeric value (double) for taxAmount",
"default": 0
},
{
"name": "shippingFee",
"type": "int",
"doc": "Numeric value (int) for shippingFee",
"default": 0
},
{
"name": "grandTotal",
"type": "double",
"doc": "Numeric value (double) for grandTotal",
"default": 0
},
{
"name": "currency",
"type": "string",
"doc": "Text string for currency",
"default": ""
},
{
"name": "couponCode",
"type": [
"null",
"string"
],
"doc": "Nullable string field for couponCode",
"default": null
},
{
"name": "payment",
"type": {
"type": "map",
"values": "string"
},
"doc": "Associative string-keyed map for payment",
"default": {}
},
{
"name": "notes",
"type": "string",
"doc": "Text string for notes",
"default": ""
}
]
}
フィールド定義21 フィールド (1 個 nullable)
Hierarchy & Max Depthレベル 1 (1 レコード)
Logical Types & Compatibility2 個の論理型 • BACKWARD

ゼロナレッジ・完全ローカル実行

すべてのデータ処理、解析、コード生成はお使いのブラウザ内部メモリで完結します。外部サーバーへの送信はゼロです。

超高速・即時リアクティブ演算

最適化されたクライアント側解析パイプラインにより、キーストロークと同時に遅延なくリアルタイムで結果を生成します。

公式仕様準拠・高信頼アーキテクチャ

IETF RFCや公式業界仕様に厳格に準拠し、エッジケースの安全な処理とメモリリークのない堅牢な実行を保証します。

技術リファレンス&アーキテクチャガイド

JSON から Apache Avro スキーマ (.avsc) 変換ツール — リファレンスガイド

JSONペイロードから、名前空間、プリミティブ型、論理型、null許容共用体型、スキーマ進化ルールを備えた本番仕様のApache Avroスキーマ(.avsc)定義を生成します。

主要パラメータ&設定項目

recordNamestring

生成されるAvroスキーマのトップレベルレコード識別子。Avroの命名規則([A-Za-z_]で始まり、英数字とアンダースコアのみ使用可能)に準拠する必要があります。

初期値: AutoRecord
namespacestring

Avroレコードのスコープを定義し、Schema Registry内での衝突を防ぐパッケージまたはドメイン名前空間(例:com.company.events)。

初期値: com.example.avro
nullabilityModestring

省略可能またはnull値を持つJSONフィールドの変換方法を指定します。'union_null_first'は下位互換性確保のため ["null", type] と default: null を生成します。

初期値: union_null_first
inferLogicalTypesboolean

ISO 8601タイムスタンプ、UUID、高精度数値を自動検出し、Avroの論理型(timestamp-millis、uuidなど)アノテーションを付与します。

初期値: true

プロの活用テクニック&推奨設定

Union型ブランチの順序定義

Apache Avro 1.xの仕様上、フィールドのデフォルト値は共用体(Union)の最初の型ブランチと一致しなければなりません。"default": null を設定する場合は、["string", "null"] ではなく必ず ["null", "string"] と定義してください。

後方互換性のためのデフォルト値

Confluent Schema Registryなどの環境でスキーマを進化させる場合、新しく追加するフィールドには必ず default 属性を指定してください。これにより、BACKWARDおよびFULL互換性が維持され、既存コンシューマーのエラーを防げます。

桁あふれ防止のlong型指定

ミリ秒エポック時刻やデータベースの自動採番IDなど、2^31 - 1 を超える可能性がある数値は、バイナリシリアライズ時の桁あふれを防ぐため 'int' ではなく必ず 'long' を指定してください。

よくあるトラブルと解決策

org.apache.avro.AvroTypeException: Default value for field does not match union branch 0

Union型の配列順序を調整し、デフォルト値の型が最初の要素になるように修正してください。"default": null の場合は、["null", "string"] のように先頭に "null" を配置します。

Confluent Schema Registry で新規フィールド追加時に SchemaIncompatibleException が発生する

新しく追加したフィールドに明示的な "default" 属性(null、空文字列 ""、false など)を追加して、上位・下位の互換性検証をパスさせてください。

よくある質問 (FAQ)

Apache Avro の .avsc スキーマファイルとは何ですか?▼

.avscファイルはJSON形式で記述されたApache Avroのスキーマ定義です。Apache Kafka、Spark、Hadoopなどの分散データパイプラインにおいて、高効率なバイナリシリアライズを行うためのレコード名、型、デフォルト値を規定します。

JSONの配列やネストされたオブジェクトはAvroでどのように表現されますか?▼

ネストされたJSONオブジェクトは、独自の 'name'、'type': 'record'、'fields' を持つ埋め込みAvroレコードに変換されます。JSON配列は要素型を指定する 'items' スキーマを持つ 'array' 型に変換されます。

イベントストリーミングで生のJSONではなくAvroが選ばれる理由は何ですか?▼

Avroはメッセージごとにフィールド名を保持せずコンパクトなバイナリに変換します。スキーマはSchema Registryで一元管理されるため、ネットワーク転送量を大幅に削減し、厳格なデータ契約を実現できます。

Avroの論理型(Logical Types)とは何ですか?▼

論理型はプリミティブ型にドメイン特有の意味を付与する仕組みです。inferLogicalTypesを有効にすると、日時文字列は 'timestamp-millis' 論理型を持つ 'long' に、UUIDは 'uuid' 論理型を持つ 'string' に変換されます。

関連するおすすめ開発ツール

すべてのツール →
GraphQL SDL to Zod バリデーションスキーマ生成開発ツール

GraphQL SDL の型定義、クエリ、入力を、Null 許容性を適切に制御したランタイム Zod バリデーションスキーマ(z.object、z.string、z.array)へ自動変換します。

ツールを開く→
GraphQL SDL to TypeScript 型・インターフェース変換ツール開発ツール

GraphQL スキーマ定義言語 (SDL) の type、input、enum をクリーンで依存関係ゼロの TypeScript インターフェースや型エイリアスにブラウザ上で直接変換します。

ツールを開く→
Kubernetes ConfigMap & Secret YAML ジェネレーター開発ツール

Base64データエンコード、stringData、TLS、Dockerレジストリ認証、およびimmutableリソースフラグに対応したKubernetes ConfigMapおよびSecretマニフェスト生成ユーティリティ。

ツールを開く→
Kubernetes HorizontalPodAutoscaler (HPA v2) 生成ツール開発ツール

CPU・メモリ使用率ターゲット、カスタムメトリクス、スケールアップ/ダウンの安定化ポリシーを含む Kubernetes HPA v2 (autoscaling/v2) マニフェストを生成します。

ツールを開く→
Redis (redis.conf) 本番運用設定ビルダー&チューニングガイド開発ツール

maxmemory退避ポリシー、RDB/AOF永続化、ネットワークバインド、セキュリティACL認証を最適化したredis.conf設定ファイルを即座に生成・調整します。

ツールを開く→
PostgreSQL (postgresql.conf) ハードウェアチューニング&構成ビルダー開発ツール

ハードウェアスペック(RAM、CPU、ストレージ種別)に基づき、shared_buffers、work_mem、effective_cache_size、max_connections などの最適化された postgresql.conf 設定を自動計算・生成します。

ツールを開く→