翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
インデックスのクエリの実行およびスキャン
SQL の SELECT ステートメントを使用したインデックスのクエリとスキャンを Amazon DynamoDB の Query
および Scan
オペレーションと比較します。
SQL を使ってインデックスのクエリを実行してスキャンする
リレーショナルデータベースでは、インデックスを直接使用しません。代わりに、SELECT
ステートメントの発行により、テーブルでクエリを実行し、クエリオプティマイザは任意のインデックスを利用できます。
クエリオプティマイザは、使用できるインデックスを評価し、クエリを高速化するためにそれらを使用できるかを決定するリレーショナルデータベース管理システム (RDBMS) のコンポーネントです。クエリを高速化するためにインデックスが使用できる場合、RDBMS は最初にインデックスにアクセスし、それを使用してテーブルのデータを特定します。
パフォーマンスを向上させるGenreAndPriceIndexために が使用できる SQL ステートメントをいくつか紹介します。ここでは、Music テーブルに十分なデータがあり、クエリオプティマイザが、テーブル全体にスキャンするのではなく、このインデックスを使用することを前提にします。
/* All of the rock songs */ SELECT * FROM Music WHERE Genre = 'Rock';
/* All of the cheap country songs */ SELECT Artist, SongTitle, Price FROM Music WHERE Genre = 'Country' AND Price < 0.50;
DinamoDB でインデックスのクエリを実行してスキャンする
DynamoDB では、テーブルに対して実行するのと同じように、インデックスに対して直接 Query
および Scan
オペレーションを実行します。DynamoDB API または PartiQL (SQL 互換のクエリ言語) を使用して、インデックスにクエリやスキャンを実行できます。TableName
と IndexName
の両方を指定する必要があります。
以下は、DynamoDB GenreAndPriceIndexの に関するいくつかのクエリです。 DynamoDB (このインデックスのキースキーマは、ジャンルと価格で構成されています。)