最終更新日 : 
                
                    2024年1月19日
                
            
            
        
        
    
説明
データを Avro バイナリ形式にシリアル化します。
戻り値
バイナリデータ(またはバイナリデータを含んだリスト)。
シンタックス
serializeAVRO(data, writerSchema [, queryFormat, useCustomSerialization ])
パラメーター
| パラメーター | 必須 | 説明 | 
| data | はい | 構造体または構造体の配列として表されるデータ。 | 
| writerSchema | はい | スキーマの文字列またはスキーマの絶対パス。これはレコードなので、JSON 配列で構成された複数のフィールドを定義することができます。こうした各フィールドには、フィールドの名前とタイプが指定されています。タイプは、整数のような単純なものでも、別のレコードのような複雑なものでも構いません。プレーン文字列として指定することも、ファイルパスとして直接指定することもできます。 | 
| queryFormat | いいえ | これは文字列タイプのパラメーターで、row、column、struct のいずれかの値を指定できます。 | 
| useCustomSerialization | いいえ | true または false です。customSerializer を使用するかどうかを指定します。デフォルト値は true です。シリアル化には必ず、カスタムシリアライザーが使用されます。false の場合、Avro シリアル化は ColdFusion のデフォルト動作を使用して実行されます。 | 
インラインスキーマの使用例
<cfscript>
    // Avro スキーマを定義
    mySchema=   '{  
                    “namespace”: “first.example”,
                    “type”: “record”,
                    “name”: “User”,
                    “fields”: [
                        {“name”: “name”, “type”: “string”},
                        {“name”: “favorite_number”,  “type”: [“int”,“null”]},
                        {“name”: “favorite_color”, “type”: [“string”,“null”]}
                    ]
                }'
    // 上記のスキーマに準拠するデータを設定
    data= {
            “name”:“Jack Sparrow”,
            “favorite_number”:{“int”:9},
            “favorite_color”:{“string”:“red”}
        }
 
    avroSerializeResponse = serializeAVRO(data, mySchema)
writedump(avroSerializeResponse)
</cfscript>
		
	
外部 avsc スキーマの使用例
first.avsc
{  
                    “namespace”: “first.example”,
                    “type”: “record”,
                    “name”: “User”,
                    “fields”: [
                        {“name”: “name”, “type”: “string”},
                        {“name”: “favorite_number”,  “type”: [“int”,“null”]},
                        {“name”: “favorite_color”, “type”: [“string”,“null”]}
                    ]
  }
		
	
avro.cfm
<cfscript>
     // 上記のスキーマに準拠するデータを設定
    data= {
            “name”:“Jack Sparrow”,
            “favorite_number”:{“int”:9},
            “favorite_color”:{“string”:“red”}
        }
 
    serializedBinaryAvroData = serializeAVRO(data,  “first.avsc”)
    writedump(serializedBinaryAvroData)
 
    deserializedStructData = deSerializeAVRO(serializedBinaryAvroData, “first.avsc”, true, true)
    writedump(deserializedStructData)
</cfscript>
		
	
avroDataAsAList.cfm
<cfscript>
     // 上記のスキーマに準拠するデータを設定
    data= [{
            “name”:“Jack Sparrow”,
            “favorite_number”:{“int”:9},
            “favorite_color”:{“string”:“red”}
        },
        {
            “name”:“Barbossa”,
            “favorite_number”:{“int”:7},
            “favorite_color”:{“string”:“black”}
        }]
 
    serializedBinaryAvroData = serializeAVRO(data,  “a.avsc”)
    writedump(serializedBinaryAvroData)
 
    deserializedStructData = deSerializeAVRO(serializedBinaryAvroData, “a.avsc”, true, true)
    writedump(deserializedStructData)
</cfscript>