SHOW INDEX は、テーブルに定義されているすべてのインデックスを、そのタイプ、構築状態、進捗、およびカラム構成を含めて返します。インデックスを削除または無効化する前に、このステートメントを実行して現在の状態を確認してください。
SHOW INDEX は LindormTable でのみサポートされています。構文
SHOW INDEX FROM table_identifier;戻りフィールド
| フィールド | 説明 |
|---|---|
TABLE_SCHEMA | クエリ対象テーブルを含むデータベース。 |
DATA_TABLE | クエリ対象テーブルの名前。 |
INDEX_NAME | インデックスの名前。 |
INDEX_STATE | インデックスの構築状態。指定可能な値: BUILDING (構築中)、ACTIVE (既存データに対する構築が完了し、新規書き込みを増分追跡中)、INACTIVE (構築失敗)、DISABLED (インデックスが無効化されている)。 |
INDEX_PROGRESS | 構築進捗。フォーマットはインデックスタイプによって異なります。詳細は、以下の「INDEX_PROGRESS の詳細」をご参照ください。 |
INDEX_TYPE | インデックスタイプ。指定可能な値: SECONDARY (セカンダリインデックス)、SEARCH (検索インデックス)。 |
INDEX_COVERED | インデックスに包含列が含まれているかどうか。セカンダリインデックスの場合: 包含列が存在する場合は TRUE、それ以外の場合は FALSE。検索インデックスの場合: NA (検索インデックスは包含列をサポートしていません)。 |
INDEX_COLUMN | インデックス内のカラム。 |
INDEX_TTL | インデックス付きデータの TTL (秒単位)。TTL が設定されていない場合: セカンダリインデックスでは空、検索インデックスでは 0。 |
INDEX_DESCRIPTION | インデックスに関する追加情報。現在、セカンダリインデックスと検索インデックスの両方で空です。 |
INDEX_PROGRESS の詳細
セカンダリインデックス — 進捗はステージ別に報告されます。
| ステージ | 意味 |
|---|---|
NOT_STARTED | 構築タスクは提出されていません。 |
WAITING | タスクは提出され、実行待ちです。 |
EXECUTING | タスク実行中。進捗は xx.xx% のフォーマットでパーセンテージとして表示されます。 |
FAILED | タスク失敗。エラーメッセージの最初の 256 文字が表示されます。 |
CANCELLED | タスクはキャンセルされました。 |
セカンダリインデックスには LindormTable 2.6.7 以降が必要です。バージョンを確認またはアップグレードするには、「LindormTable のリリースノート」および「Lindorm インスタンスのマイナーエンジンバージョンをアップグレードする」をご参照ください。コンソールでアップグレードが利用できない場合は、DingTalk (ID: s0s3eg3) でテクニカルサポートにお問い合わせください。
検索インデックス — リアルタイムのビルド進行状況は利用できません。そのため、INDEX_PROGRESS は常に N/A を表示します。実際のレプリケーションの進行状況を確認するには、LTS コンソールに移動し、[Lindorm Search] > [検索へのフルデータレプリケーション] を選択してから、[状態] フィールドを確認してください。
例
次の例では、1 つのセカンダリインデックス (idx1) と 1 つの検索インデックス (idx2) を持つベーステーブルを作成し、SHOW INDEX を実行します。
-- プライマリテーブルを作成します。
CREATE TABLE test (
p1 VARCHAR NOT NULL,
p2 INTEGER NOT NULL,
c1 BIGINT,
c2 DOUBLE,
c3 VARCHAR,
c4 TIMESTAMP,
PRIMARY KEY(p1, p2)
) WITH (CONSISTENCY = 'strong', MUTABILITY='MUTABLE_LATEST');
-- セカンダリインデックス idx1 を作成します。
CREATE INDEX idx1 ON test(c1 desc) include(c3,c4) WITH (COMPRESSION='ZSTD');
-- 検索インデックス idx2 を作成します。
CREATE INDEX IF NOT EXISTS idx2 USING SEARCH ON test(p1, p2, c1, c2, c3);test テーブル上のすべてのインデックスをクエリします。
SHOW INDEX FROM test;出力:
+--------------+------------+------------+-------------+-------------------------------+------------+---------------+----------------+-----------+---------------------------------------+
| TABLE_SCHEMA | DATA_TABLE | INDEX_NAME | INDEX_STATE | INDEX_PROGRESS | INDEX_TYPE | INDEX_COVERED | INDEX_COLUMN | INDEX_TTL | INDEX_DESCRIPTION |
+--------------+------------+------------+-------------+-------------------------------+------------+---------------+----------------+-----------+---------------------------------------+
| hd | test | idx1 | ACTIVE | 100% | SECONDARY | TRUE | c1,p1,p2 | | |
| hd | test | idx2 | ACTIVE | N/A | SEARCH | NA | p1,c3,p2,c2,c1 | 0 | |
+--------------+------------+------------+-------------+-------------------------------+------------+---------------+----------------+-----------+---------------------------------------+idx1 は包含列 (c3、c4) を持つセカンダリインデックスであるため、INDEX_COVERED は TRUE です。idx2 は検索インデックスであり、包含列をサポートしていないため、INDEX_COVERED は NA です。包含列の詳細については、「セカンダリインデックス」をご参照ください。