背景情報
Oracleのクラスタは、共通の列を共有し、関連データを同じブロックに格納するテーブルです。 クラスタテーブルを使用すると、1つのデータブロックに複数のテーブルの行を含めることができます。 これにより、Joinsが頻繁に発生するテーブルのディスクIOが削減されます。
列を共有するテーブルはPolarDB O Editionではサポートされていませんが、PolarDB O Editionでは特定のインデックスによってヒープテーブルデータを再編成する機能があります。
解決策
クラスター構文
CLUSTER [VERBOSE] table_name [ USING index_name ]
クラスターは、データの物理ストレージの順序を調整し、指定されたインデックスでデータを再ソートします。 クラスター操作は1回限りであり、その後のテーブルの変更に対して自動的に調整されることはありません。
例
#Cluster the table employees on the basis of its index employees_ind:
CLUSTER employees USING employees_ind;
#Cluster the employees table using the same index that was used before:
CLUSTER employees;
#Cluster all tables in the database that have previously been clustered:
CLUSTER;