すべてのプロダクト
Search
ドキュメントセンター

AnalyticDB:GiSTインデックス作成

最終更新日:Sep 29, 2024

このトピックでは、GiSTインデックス作成について説明します。 軌道データを格納する列にGiSTインデックスを作成できます。

構文

CREATE INDEX [index_name] on table_name USING GIST(traj_col [operator_family]);
  • index_name: インデックスの名前。 このパラメーターはオプションです。

  • table_name: 列が属するテーブルの名前。

  • traj_col: 列の名前。

  • operator_family: インデックスの作成に使用される演算子ファミリ。 デフォルト値: trajgist_ops_3dt このパラメーターはオプションです。

説明

作成されたインデックスは、演算子と次の関数によって実行されるクエリを高速化します。

サポートされているオペレーターファミリー

次の表に、GiSTでサポートされている演算子ファミリを示します。

オペレータ家族

説明

trajgist_ops_z

z軸上にインデックスを作成します。 このタイプのインデックスは、z軸のみをカバーするクエリをサポートします。

trajgist_ops_t

t軸にインデックスを作成します。 このタイプのインデックスは、t軸のみをカバーするクエリをサポートします。

trajgist_ops_2d

x軸とy軸にインデックスを作成します。 このタイプのインデックスは、x軸とy軸のみをカバーするクエリをサポートします。

trajgist_ops_2dt

x、y、t軸にインデックスを作成します。 このタイプのインデックスは、x軸とy軸のみをカバーするクエリ、t軸のみをカバーするクエリ、およびx軸、y軸、t軸をカバーするクエリをサポートします。

trajgist_ops_3d

x、y、z軸にインデックスを作成します。 このタイプのインデックスは、x軸とy軸のみをカバーするクエリ、z軸のみをカバーするクエリ、x軸、y軸、z軸をカバーするクエリをサポートします。

trajgist_ops_3dt

x、y、z、t軸にインデックスを作成します。 このタイプのインデックスは、前述の5つの演算子ファミリでサポートされているすべてのクエリをサポートします。

説明

ほとんどの場合、作成されたインデックスのディメンション数が少ないほど、クエリあたりの速度が速くなります。 特定の種類のクエリを頻繁に実行する場合は、デフォルトのtrajgist_ops_3dt演算子ファミリーに加えて、ディメンション要件を満たす別の演算子ファミリーを指定することをお勧めします。

例:

  • t軸にインデックスを作成します。

    CREATE INDEX on table_name USING GIST(traj_col trajgist_ops_t);
  • x軸とy軸にインデックスを作成します。

    CREATE INDEX on table_name USING GIST(traj_col trajgist_ops_2d);
  • x、y、t軸にインデックスを作成します。

    CREATE INDEX on table_name USING GIST(traj_col trajgist_ops_2dt);