四角形範囲検索を使用すると、クエリ条件として長方形の地理的エリアを指定できます。Tablestore は、指定されたフィールドの値がこの長方形の地理的エリア内に含まれる行を返します。
API オペレーション
Search オペレーションまたは ParallelScan オペレーションでクエリタイプを GeoBoundingBoxQuery に設定することで、四角形範囲検索を実行できます。
パラメーター
|
パラメーター |
説明 |
|
fieldName |
クエリ対象の列名。このパラメーターの値は GEOPOINT データ型である必要があります。 |
|
topLeft |
長方形の地理的エリアの左上隅の座標ペア。 |
|
bottomRight |
長方形の地理的エリアの右下隅の座標ペア。長方形の地理的エリアは、左上隅と右下隅の座標ペアで指定できます。 フォーマットは |
|
query |
多次元インデックスのクエリ文。このパラメーターを GeoBoundingBoxQuery に設定します。 |
|
getTotalCount |
クエリ条件を満たす行の合計数を返すかどうかを指定します。デフォルト値は false で、クエリ条件を満たす行の合計数は返されません。 このパラメーターを true に設定すると、クエリのパフォーマンスが低下します。 |
|
tableName |
データテーブルの名前。 |
|
indexName |
検索インデックスの名前。 |
|
columnsToGet |
クエリ条件を満たす各行のすべての列を返すかどうかを指定します。このパラメーターでは、returnAll フィールドおよび columns フィールドを指定できます。 returnAll フィールドのデフォルト値は false で、すべての列が返されないことを意味します。この場合、columns フィールドを使用して返したい列を指定できます。返す列を指定しない場合は、プライマリキー列のみが返されます。 returnAll フィールドを true に設定すると、すべての列が返されます。 |
方法
Tablestore コンソール、Tablestore CLI、および Tablestore SDK を使用して四角形範囲検索を実行できます。四角形範囲検索を実行する前に、以下の前提条件を満たしていることを確認してください。
Table Store の操作に必要な権限を持つ Alibaba Cloud アカウントまたは RAM ユーザーを使用します。RAM ユーザーに権限を付与する方法については、「RAM ポリシーによる RAM ユーザーへの権限付与」をご参照ください。
SDK またはコマンドラインツールを使用する場合は、Alibaba Cloud アカウントまたは RAM ユーザーの AccessKey がまだない場合、AccessKey を作成してください。
データテーブルを作成済みであること。
データテーブルに対して検索インデックスが作成されました。
SDK を使用する場合は、Tablestore Client を初期化してください。
コマンドラインツールを使用する場合は、ツールをダウンロードして起動し、ご利用のインスタンスへの接続を設定して対象テーブルを選択してください。詳細については、「コマンドラインツールのダウンロード」、「ツールの起動と接続情報の設定」、および「データテーブル操作」をご参照ください。
課金
多次元インデックスを使用したデータのクエリは、読み取りスループットを消費します。詳細については、「多次元インデックスのメータリングと課金」をご参照ください。
よくある質問
関連ドキュメント
多次元インデックスは、多次元データクエリ用にさまざまなクエリタイプをサポートしています。これには、完全一致検索、複数値完全一致検索、完全一致検索、一致検索、フレーズ一致検索、範囲クエリ、プレフィックス検索、サフィックス検索、ワイルドカード検索、トークンベースのワイルドカード検索、ブール検索、ジオクエリ、ネストされたクエリ、ベクトル検索、および 存在検索 が含まれます。
データをクエリする際には、結果セットをソートおよびページネーションしたり、重複排除を実行したりできます。
最大値や最小値の検索、合計の計算、行数のカウントなどのデータ分析を行うには、統計集約機能または SQL クエリ 機能を使用できます。
結果セットの順序を問わずデータを高速にエクスポートするには、Parallel Scan 機能を使用できます。