JSON 関数 - AWS Clean Rooms

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

JSON 関数

相対的に小さい一連のキーと値のペアを格納する必要がある場合は、データを JSON 形式で格納すると、スペースを節約できます。JSON 文字列は単一の列に格納できるため、データを表形式で格納するより、JSON を使用する方が効率的である可能性があります。

例えば、スパース表があるとします。その表では、すべての属性を完全に表すために多数の列が必要ですが、指定された行または指定された列のほとんどの列値は NULL になります。格納に JSON を使用することによって、行のデータを単一の JSON 文字列にキーと値のペアで格納できる可能性があり、格納データの少ない表の列を除去できる可能性があります。

その上、JSON 文字列を簡単に変更することによって、列を表に追加することなく、キーと値のペアをさらに格納することもできます。

JSON の使用は控えめにすることをお勧めします。JSON では、単一の列にさまざまなデータが保存され、AWS Clean Rooms の列保存アーキテクチャが使用されません。したがってこの形式は、大きいデータセットの保存には適していません。

JSON は UTF-8 でエンコードされたテキスト文字列を使用するため、JSON 文字列を CHAR データ型または VARCHAR データ型として格納できます。文字列にマルチバイト文字が含まれている場合は、VARCHAR を使用します。

JSON 文字列は、以下のルールに従って、正しくフォーマットされた JSON である必要があります。

  • ルートレベルの JSON には、JSON オブジェクトまたは JSON 配列を使用できます。JSON オブジェクトは、順序が設定されていない一連のキーと値のペアがカンマで区切られ、中括弧で囲まれたものです。

    例えば、{"one":1, "two":2} などです。

  • JSON 配列は、順序付けられた一連のカンマ区切り値が角括弧で囲まれたものです。

    例は次のとおりです: ["first", {"one":1}, "second", 3, null]

  • JSON 配列は、0 から始まるインデックスを使用します。配列内の最初の要素の位置は 0 です。JSON のキーと値のペアでは、キーは二重引用符で囲まれた文字列です。

  • JSON 値には次のいずれかを指定できます。

    • JSON オブジェクト

    • JSON 配列

    • 二重引用符で囲まれた文字列

    • 数値 (整数および浮動小数点数)

    • ブール値

    • Null

  • 空のオブジェクトおよび空の配列は、有効な JSON 値です。

  • JSON フィールドでは、大文字と小文字が区別されます。

  • JSON 構造要素 ({ }, [ ] など) は無視されます。

AWS Clean Rooms JSON 関数および AWS Clean Rooms COPY コマンドは、同じメソッドを使用して JSON 形式のデータを操作します。