Amazon QLDB の PartiQL リファレンス - Amazon Quantum Ledger Database (Amazon QLDB)

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

Amazon QLDB の PartiQL リファレンス

Amazon QLDB は、PartiQL クエリ言語のサブセットをサポートしています。以下のトピックでは、PartiQL の QLDB 実装について説明します。

注記
  • QLDB は、すべての PartiQL オペレーションをサポートしているわけではありません。

  • QLDB のすべての PartiQL ステートメントは、Amazon QLDB でのクォータと制限 で定義されているトランザクション制限の対象となります。

  • このリファレンスでは、QLDB コンソールまたは QLDB シェルで手動で実行する PartiQL ステートメントの基本的な構文と使用例を示します。QLDB ドライバーを使用して同様のステートメントをプログラムで実行する方法を示すコード例については、「ドライバーの開始方法」のチュートリアルを参照してください。

PartiQL とは何ですか?

PartiQL は、構造化データ、半構造化データ、ネストされたデータを含む複数のデータストア間で、SQL 互換のクエリアクセスを提供します。PartiQL は、Amazon 内で広く使用されており、現在、QLDB を含む多くの AWS のサービス の一部として利用できます。

PartiQL の仕様とコアクエリ言語のチュートリアルについては、PartiQL ドキュメントを参照してください。

PartiQL は、SQL-92 を拡張することで、Amazon Ion データ形式のドキュメントをサポートしています。Amazon Ion の詳細については、「Amazon QLDB の Amazon Ion データ形式リファレンス」を参照してください。

Amazon QLDB の PartiQL

QLDB で PartiQL クエリを実行するには、次のいずれかを使用します。

  • QLDB の AWS Management Console の PartiQL エディタ

  • コマンドライン QLDB シェル

  • クエリをプログラムで実行する、AWS 提供の QLDB ドライバー

これらの方法を使用して QLDB にアクセスする方法については、「Amazon QLDB へのアクセス」を参照してください。

特定のテーブルで各 PartiQL コマンドを実行するためのアクセスを制御する方法については、「Amazon QLDB の標準アクセス許可モードの開始方法」を参照してください。

QLDB における PartiQL のクイックヒント

以下は、QLDB で PartiQL を使用するためのヒントとベストプラクティスの簡単な要約です。

  • 同時実行性とトランザクション制限を理解する - SELECT クエリを含むすべてのステートメントはオプティミスティック同時実行制御 (OCC、Optimistic Concurrency Control) 競合およびトランザクション制限 (30 秒のトランザクションタイムアウトなど) の対象になります。

  • インデックスの使用 - 高基数インデックスを使用し、ターゲットとなるクエリを実行して、ステートメントを最適化し、すべてのテーブルスキャンを回避します。詳細については、「クエリパフォーマンスの最適化」を参照してください。

  • 等価述語の使用 - インデックス付きルックアップには等価演算子 (= または IN) が必要です。不等価演算子 (<>LIKEBETWEEN) はインデックス付きルックアップの対象にならず、すべてのテーブルスキャンが実行されます。

  • 内部結合のみを使用する - QLDB は現在、内部結合のみをサポートしています。ベストプラクティスとして、結合するテーブルごとにインデックス付けされたフィールドで結合します。結合基準と等価述語の両方に高基数インデックスを選択します。