日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

創建TTL表

本文介紹了TTL表相關的CREATE TABLE語法。

若在建表時指定local_partition_definition語法,則將創建一張TTL表,TTL表會將每個物理表按照時間進行分區。

如果需要將t_order的物理表按照gmt_modified列進行時間分區,每個分區間隔一個月,每個分區12個月后過期,提前創建3個分區,創建語法如下:

CREATE TABLE t_order (
    id bigint NOT NULL AUTO_INCREMENT,
    gmt_modified DATETIME NOT NULL,
    PRIMARY KEY (id, gmt_modified)
)
PARTITION BY HASH(id)
PARTITIONS 16
LOCAL PARTITION BY RANGE (gmt_modified)
INTERVAL 1 MONTH
EXPIRE AFTER 12
PRE ALLOCATE 3;
表 1. 參數說明

參數

是否必填

示例

說明

LOCAL PARTITION BY RANGE (column_name)

LOCAL PARTITION BY RANGE (gmt_modified)

指定TTL表的物理時間分區列。在物理表上數據會以此列做時間分區。

STARTWITH 'yyyy-MM-dd'

STARTWITH '2022-01-01'

初始時間分區。TTL表會把“初始時間分區”作為第一個分區。

INTERVAL interval_count MONTH

INTERVAL 2 MONTH

時間分區的間隔,支持的時間粒度為YEAR、MONTH、DAY。

EXPIRE AFTER expire_after_count

EXPIRE AFTER 6

指定分區失效的時間。

INTERVAL 2 MONTHEXPIRE AFTER 6

表示每隔2個月劃分一個物理時間分區每經過6倍物理時間分區(12個月),失效1個分區。

PRE ALLOCATE pre_allocate_count

PRE ALLOCATE 2

指定提前創建的分區數量。

示例表示提前創建2個物理時間分區。

PIVOTDATE pivotdate_func

PIVOTDATE NOW()

指定基準時間,一般用默認值。

DISABLE SCHEDULE

DISABLE SCHEDULE

禁用自動分區滾動。

如果開啟的話,過期分區會自動被刪除,新分區會自動提前創建。

語法限制

  • TTL表支持的時間分區列類型為:date、datetime;

  • 所有的唯一鍵(包括主鍵)必須包含TTL表的local partition by range時間分區列;

  • TTL表最多支持32個最大物理時間分區。

查看TTL表的分區元數據

TTL表創建后,可以通過information_schema.local_partitions視圖查看物理表上的分區信息。每個物理時間分區(Local Partition)會存儲小于PARTITION_DESCRIPTION的數據。比如下面的例子中,'2021-11-15'的數據會存儲到分區:p20211201。

每個物理時間分區(Local Partition)的失效時間會通過PARTITION_COMMENT顯示。

說明

local_partition是示例中的庫名稱,請根據實際情況進行替換。

select * from information_schema.local_partitions where table_name = 't_order' and table_schema='local_partition'\G;

*************************** 1. row ***************************
         TABLE_SCHEMA: local_partition
           TABLE_NAME: t_order
       PARTITION_NAME: p20211101
     PARTITION_METHOD: RANGE COLUMNS
 PARTITION_EXPRESSION: `gmt_modified`
PARTITION_DESCRIPTION: '2021-11-01'
    PARTITION_COMMENT: expire:2022-11-01
*************************** 2. row ***************************
         TABLE_SCHEMA: local_partition
           TABLE_NAME: t_order
       PARTITION_NAME: p20211201
     PARTITION_METHOD: RANGE COLUMNS
 PARTITION_EXPRESSION: `gmt_modified`
PARTITION_DESCRIPTION: '2021-12-01'
    PARTITION_COMMENT: expire:2022-12-01
*************************** 3. row ***************************
         TABLE_SCHEMA: local_partition
           TABLE_NAME: t_order
       PARTITION_NAME: pmax
     PARTITION_METHOD: RANGE COLUMNS
 PARTITION_EXPRESSION: `gmt_modified`
PARTITION_DESCRIPTION: MAXVALUE
    PARTITION_COMMENT:
7 rows in set (13.19 sec)

校驗物理分區的完整性

校驗所有物理表(包括GSI)的物理時間分區(Local Partition)的完整性。

check table t_order with local partition;
456789