如何设计GaussDB分区表?分区和分片有什么区别?

考察点:分区与分片的组合设计能力。

参考答案

  • 分片(Sharding):数据分布在不同节点,解决扩展性问题
  • 分区(Partitioning):数据在同一节点内按规则划分,解决管理和查询效率问题
  • 组合使用:先按分片键分布到不同DN,再在每个DN内按时间范围分区

示例:订单表按user_id分片,再按order_date按月分区

sql

CREATE TABLE orders (
    order_id BIGINT,
    user_id INT,
    order_date DATE,
    amount DECIMAL
) DISTRIBUTE BY HASH(user_id)
PARTITION BY RANGE(order_date) (
    PARTITION p202501 VALUES LESS THAN ('2025-02-01'),
    PARTITION p202502 VALUES LESS THAN ('2025-03-01')
);
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务