本記事では、SQLステートメントを使用してパーティションレベルのホットキャッシュポリシー(STORAGE_CACHE_POLICY)を作成する方法について説明します。
説明
OceanBaseデータベースはV4.4.1バージョンから、共有ストレージモードでテーブル作成時にパーティションレベルのホットキャッシュポリシーを指定する機能をサポートしています。
注意事項
パーティションレベルのホットキャッシュポリシーは、共有ストレージモードでのみテーブル作成時に指定できます。
構文
パーティションテーブルを作成する際、パーティションまたはサブパーティションに対してそのパーティションのキャッシュポリシーを指定できます。具体的なパーティション(Partition)に指定された STORAGE_CACHE_POLICY を追加する必要があり、構文は以下のとおりです:
CREATE TABLE table_name (table_definition_list)
partition_option
(partition_list [STORAGE_CACHE_POLICY = {"hot" | "auto" | "none"}])
subpartition_option
(subpartition_list [STORAGE_CACHE_POLICY = {"hot" | "auto" | "none"}]);
関連パラメータの説明
パーティションレベルの STORAGE_CACHE_POLICY はオプションで、取り得る値は以下のとおりです:
hot:指定したパーティションのすべてのデータがホットデータであることを示します。キャッシュディスク容量に余裕がある場合、パーティション内のすべてのデータがローカルキャッシュディスクにキャッシュされます。auto:指定したパーティションのホットデータはシステムが自動的に識別することを示します。none:デフォルト値で、このパーティションのホットキャッシュポリシーが上位レベルのSTORAGE_CACHE_POLICYの値に従うことを示します。
パーティションテーブルの作成に関する詳細は、パーティションテーブルの作成を参照してください。
例
パーティションテーブル作成時にパーティションの
STORAGE_CACHE_POLICYを指定する。CREATE TABLE tbl1 (col1 INT, col2 INT, col3 INT) PARTITION BY RANGE(col1) SUBPARTITION BY KEY(col2, col3) SUBPARTITIONS 5 (PARTITION p0 VALUES LESS THAN(0) STORAGE_CACHE_POLICY = "hot", PARTITION p1 VALUES LESS THAN(100) STORAGE_CACHE_POLICY = "auto" );パーティションテーブル作成時にサブパーティションの
STORAGE_CACHE_POLICYを指定する。CREATE TABLE tbl2 (col1 INT, col2 INT) PARTITION BY RANGE(col1) SUBPARTITION BY RANGE(col2) (PARTITION p0 VALUES LESS THAN(100) (SUBPARTITION sp0 VALUES LESS THAN(2020) STORAGE_CACHE_POLICY = "hot", SUBPARTITION sp1 VALUES LESS THAN(2021)), PARTITION p1 VALUES LESS THAN(200) (SUBPARTITION sp2 VALUES LESS THAN(2020), SUBPARTITION sp3 VALUES LESS THAN(2021) STORAGE_CACHE_POLICY = "hot", SUBPARTITION sp4 VALUES LESS THAN(2022)) );