二级分区是按照两个维度来把数据拆分成分区的操作。最常用的地方是类似用户账单的场景。

    二级分区有:

    • Hash/Key + Range/Range_Columns 分区
    • Range/Range_Columns + Hash/Key 分区
    • List/List_Columns+ Range/Range_Columns 分区
    • Range/Range_Columns + List/List_Columns分区
    • Hash/Key + List/List_Columns 分区
    • List/List_Columns+Hash/Key 分区

    OceanBase 目前只支持二级分区的模版化定义,即每个一级分区下的二级分区个数和定义方式相同,例如,以下的分区建表语句是不支持的:

    1. CREATE TABLE t2
    2. (
    3. c1 INT,
    4. c2 INT
    5. )
    6. PARTITION BY RANGE(c1)
    7. SUBPARTITION BY HASH(c2)
    8. (
    9. PARTITION p0 VALUES less than(100) (SUBPARTITION sp0),
    10. PARTITION p1 VALUES less than(200) (SUBPARTITION sp2, SUBPARTITION sp3)
    11. );