一文搞懂分库分表算法,通俗易懂(基因法、一致性 hash、时间维度)

您所在的位置:网站首页 oβf444基因 一文搞懂分库分表算法,通俗易懂(基因法、一致性 hash、时间维度)

一文搞懂分库分表算法,通俗易懂(基因法、一致性 hash、时间维度)

2024-07-09 18:37| 来源: 网络整理| 查看: 265

一文搞懂分库分表算法,通俗易懂(基因法、一致性 hash、时间维度)目录 前言分库分表算法-时间维度分库分表算法-基因替换法(使用)分库分表算法-基因替换法(缺点之扩容难)分库分表算法-基因替换法(缺点之容易生成重复订单号)分库分表算法-基因拼接法介绍分库分表算法-基因拼接法使用基因拼接、替换法生成重复订单号数量对比测试分库分表算法之一致性 Hash 法(使用)分库分表算法之一致性 Hash 优缺点小咸鱼的技术窝

前言

最近手上一个系统的访问速度有点慢,老早前用多线程优化过一些接口,将一些复杂 sql 改成单表查询,走内存处理,成功的将 一些 10 多秒的接口优化到 500 ms,但是数据量上来了单表查询效率也有点慢了,不得不考虑进行分库分表了,当然我这里只进行分表,没分库,问就是服务器资源紧张!并借此深入总结一下主流的几种分库还有分表算法。分库分表最繁琐的地方在于迁移数据和比对数据!!!!!!

分库分表算法-时间维度

其实分库分表配置很简单,复杂的是旧数据的迁移还有校对。以及后续需要考虑的扩容。举个例子按时间维度扩容很简单,分库算法:按年对库的总数进行取模。分表算法:按月对表的总数进行取模。用代码实现如下

static int DB_COUNT = 17; static int TABLE_COUNT = 12; public static void main(String[] args) { for (int year = 2023; year


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3