Amazon QLDB ドキュメント - Amazon Quantum 台帳データベース (Amazon QLDB)

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

Amazon QLDB ドキュメント

重要

サポート終了通知: 既存のお客様は、07/31/2025 のサポート終了QLDBまで Amazon を使用できます。詳細については、「Amazon Ledger QLDB を Amazon Aurora Postgre に移行するSQL」を参照してください。

Amazon はデータレコードをドキュメントとしてQLDB保存します。これは、テーブルに挿入される Amazon Ion struct オブジェクトのみです。Ion の仕様については、「Amazon Ion GitHubサイト」を参照してください。

Ion ドキュメントの構造

と同様にJSON、QLDBドキュメントは次の構造の名前と値のペアで構成されます。

{ name1: value1, name2: value2, name3: value3, ... nameN: valueN }

名前は記号トークンで、値は無制限です。名前と値の各ペアはフィールドと呼ばれます。フィールドの値は、コンテナ型 (ネストされた構造、リスト、構造のリスト) を含む、任意の Ion データ型 にすることができます。

同様にJSON、 structは中括弧 () で示され、 {...} listは角括弧 () [...] で示されます。次の例は、さまざまな型の値を含む Amazon QLDBコンソールの開始方法 のサンプルデータのドキュメントです。

{ VIN: "1N4AL11D75C109151", LicensePlateNumber: "LEWISR261LL", State: "WA", City: "Seattle", PendingPenaltyTicketAmount: 90.25, ValidFrom: 2017-08-21T, ValidTo: 2020-05-11T, Owners: { PrimaryOwner: { PersonId: "294jJ3YUoH1IEEm8GSabOs" }, SecondaryOwners: [{ PersonId: "5Ufgdlnj06gF5CWcOIu64s" }] } }
重要

Ion では、二重引用符は文字列値を表し、引用符で囲まれていないシンボルはフィールド名を表します。ただし、PartiQL では、一重引用符は文字列とフィールド名の両方を表します。

この構文の違いにより、PartiQL クエリ言語はSQL互換性を維持し、Amazon Ion データ形式はJSON互換性を維持できます。での PartiQL の構文とセマンティクスの詳細についてはQLDB、「」を参照してくださいPartiQL での Ion のクエリ

PartiQL と Ion の型マッピング

ではQLDB、PartiQL は SQLのタイプシステムを拡張して Ion データモデルをカバーします。このマッピングについて以下に説明します。

  • SQL スカラータイプは、Ion 対応でカバーされます。例:

    • CHARVARCHAR は、Ion の string 型にマッピングされる Unicode シーケンスです。

    • NUMBER は、Ion decimal タイプにマッピングされます。

  • Ion structのタイプはタプルに相当します。SQLタプルは従来、テーブルを表します。

    • ただし、オープンコンテンツではスキーマを使用しない場合、タプルの順序付けされた性質に依存するクエリ ( SQL の出力順序など) はサポートされていませんSELECT *

  • NULL に加えて、PartiQL には MISSING 型があります。これは NULL の特殊化であり、欠けているフィールドあることを示します。この型が必要なのは、Ion の struct フィールドがスパースであるためです。

ドキュメント ID

QLDB は、テーブルに挿入する各ドキュメントにドキュメント ID を割り当てます。システムによって割り当てられたすべての識別子 (UUID) IDsは、それぞれ Base62-encodedされた文字列 ( など) で表されます3Qv67yjXEwB9SjmvkuG6Cp。詳細については、「Amazon IDsで一意 QLDB」を参照してください。

ドキュメントの各リビジョンは、ドキュメント ID と 0 から始まるバージョン番号を組み合わせてそれぞれ識別されます。

ドキュメント ID およびバージョンフィールドはドキュメントのメタデータに含まれており、コミット済みビュー (テーブルのシステム定義のビュー) でクエリを実行できます。のビューの詳細については、QLDB「」を参照してください重要な概念。メタデータの詳細については、「ドキュメントのメタデータのクエリの実行」を参照してください。