本記事では、SQLステートメントを使用してパーティションレベルのホットスポットキャッシュポリシー(STORAGE_CACHE_POLICY)を変更する方法について説明します。
注意事項
パーティションレベルのホットスポットキャッシュポリシーは、共有ストレージモードでのみ変更できます。
パーティションレベルのホットスポットキャッシュポリシーの変更
パーティションテーブル作成後、ALTER TABLEステートメントを使用して、パーティション追加時にSTORAGE_CACHE_POLICYを指定したり、既存のパーティションのSTORAGE_CACHE_POLICYを変更したりできます。構文は以下のとおりです:
パーティション追加時に
STORAGE_CACHE_POLICYを指定する場合:ALTER TABLE table_name ADD PARTITION (partition_list [STORAGE_CACHE_POLICY = {"hot" | "auto" | "none"}]);パーティションの
STORAGE_CACHE_POLICYを変更する場合:ALTER TABLE table_name ALTER PARTITION (partition_list [STORAGE_CACHE_POLICY = {"hot" | "auto" | "none"}]);
関連パラメータの説明
パーティションレベルのSTORAGE_CACHE_POLICYはオプションで、取り得る値は以下のとおりです:
hot:指定されたパーティションのすべてのデータがホットデータであることを意味します。キャッシュディスク容量に余裕がある場合、そのパーティション内のすべてのデータがローカルキャッシュディスクにキャッシュされます。auto:指定されたパーティションのホットデータはシステムが自動的に識別することを意味します。none:デフォルト値で、そのパーティションのホットスポットキャッシュポリシーが上位レベルのSTORAGE_CACHE_POLICYの値に従うことを意味します。
パーティションテーブルの変更に関する詳細は、パーティションの追加およびパーティションルールの変更を参照してください。
例
テーブル
tbl1に新しいパーティションp2を追加します。パーティションp2内でローカルディスクにキャッシュするホットデータは、システムが自動的に識別します。ALTER TABLE tbl1 ADD PARTITION (PARTITION p2 VALUES LESS THAN(300) STORAGE_CACHE_POLICY = "auto");テーブル
tbl1の既存のパーティションp1内のデータをホットデータに変更します。ALTER TABLE tbl1 ALTER PARTITION p1 STORAGE_CACHE_POLICY = "hot";テーブル
tbl2のサブパーティションsp3内でローカルディスクにキャッシュするデータは、システムが自動的に識別するように変更します。ALTER TABLE tbl2 ALTER SUBPARTITION sp3 STORAGE_CACHE_POLICY = "auto";