数据仓库服务 GAUSSDB(DWS)-冷热数据管理:使用示例

时间:2024-06-29 17:51:20

使用示例

  1. 创建列存冷热数据管理表,指定热数据有效期LMT为100天。
    1
    2
    3
    4
    5
    6
    7
    8
    CREATE TABLE lifecycle_table(i int, val text) WITH (ORIENTATION = COLUMN, storage_policy = 'LMT:100')
    PARTITION BY RANGE (i)
    (
    PARTITION P1 VALUES LESS THAN(5),
    PARTITION P2 VALUES LESS THAN(10),
    PARTITION P3 VALUES LESS THAN(15),
    PARTITION P8 VALUES LESS THAN(MAXVALUE)
    )ENABLE ROW MOVEMENT;
    
  2. 切换冷数据至OBS表空间。
    • 自动切换:每日0点调度框架自动触发,无需关注切换情况。

      可自定义自动切换时间:根据业务情况调整自动触发时间,修改为每天早晨6点30分。

      1
      SELECT * FROM pg_obs_cold_refresh_time('lifecycle_table', '06:30:00');
      
    • 手动切换。

      执行如下操作手动切换单表:

      1
      ALTER TABLE lifecycle_table refresh storage;
      

      执行如下操作批量切换所有冷热表:

      1
      SELECT pg_catalog.pg_refresh_storage();
      
  3. 将冷分区数据转换成热分区。该功能仅8.3.0及以上版本支持。

    将冷热表的所有冷分区转换成热分区:

    1
    SELECT pg_catalog.reload_cold_partition('lifecycle_table');
    

    将冷热表的指定冷分区转换成热分区:

    1
    SELECT pg_catalog.reload_cold_partition('lifecycle_table', 'cold_partition_name');
    
  4. 查看冷热表数据分布情况。

    查看单表数据分布情况:

    1
    SELECT * FROM pg_catalog.pg_lifecycle_table_data_distribute('lifecycle_table');
    

    查看所有冷热表数据分布情况:

    1
    SELECT * FROM pg_catalog.pg_lifecycle_node_data_distribute();
    
support.huaweicloud.com/devg-830-dws/dws_04_0996.html