更新时间:2022-08-12 GMT+08:00
分享

DDM如何进行分片

分布式数据库中,可以通过分片存储方式,轻松解决大数据量单表容量达到单机数据库存储上限的瓶颈,因此创建逻辑库和逻辑表时,需要根据实际情况确定逻辑表是否进行分片以及按什么规则分。

分片存储后,需要尽量避免跨库JOIN操作带来的性能与资源消耗问题。

  • 逻辑表是否分片

    DDM逻辑表支持全局表、拆分表、单表三种类型。用户可以按照数据表的实际使用需求,选择最合适的逻辑表类型创建,实际操作请参考创建表

    • 单表只在第一个分片创建表以及存储数据。
    • 全局表在每一个分片创建表并且存储全量数据。
    • 拆分表在每一个分片创建表,数据按照拆分规则分散存储在分片中。
  • 按什么规则分

    逻辑表的拆分键选择非常重要。建议按实际业务场景选择拆分键,不同逻辑表,如果具有E-R关系,建议选择相同字段做拆分键,避免跨库JOIN操作。

在实际使用中,请结合以下建议评估是否进行分片:

  • 数据量在1000万条以下的表,不建议分片。
  • 数据量在1000万条以上的表,建议分片。将数据分片存储后,既能解决单张表容量过大带来的性能瓶颈,同时提高并发支持。注意要选择合适的拆分键,提前做好规划。
  • 业务读取尽量少用多表JOIN,同一个事务避免跨分片。
  • 查询条件尽量带上拆分键,避免全拆分表扫描。
分享:

DDM使用类 所有常见问题

more