基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。
创建分区级热点缓存策略
更新时间:2025-11-05 17:31:43
本文将向您介绍如何使用 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)) );