分库分表原则.docx_第1页
分库分表原则.docx_第2页
分库分表原则.docx_第3页
分库分表原则.docx_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

分库分表原则读完分库分表基础,对于分库分表有了一个概念性的认识,数据库表可以分成两大类:一类是公共表,另一类是业务表。业务表定义业务表很容易识别,随着业务开展,表的数据量会越来越大,一个数据库很难存放的下,我们需要对于数据库和表的分布进行管理控制,引入节点定位服务,以满足业务需求。公共表的特点定义在分片的情况下,当业务表因为规模而进行分片以后,业务表与这些附属的字典表之间的关联,就成了比较棘手的问题,考虑到字典表具有以下几个特性: 变动不频繁 数据量总体变化不大 数据规模不大,很少有超过数十万条记录。鉴于此,系统需要定义了一种特殊的表,称之为“全局表”,全局表可通过小表广播同步到个系统,全局表具有以下特性: 全局表的插入、更新操作会实时在所有节点上执行,保持各个分片的数据一致性 全局表的查询操作,只从一个节点获取 全局表可以跟任何一个表进行JOIN操作公共表小表广播公共表在初始化时,需要初始化到每个分库上面,以后的变化都需要把主库的数据同步到每一个分库上面去,形成小表广播机制。这样每分库上的表都可以有全量的公共表。业务表分库分表原则分库分表是对于业务表而言的,现阶段考虑的是纵向切分,分库分表是两个不同的概念。分库原则(1) 租户间的数据,考虑通过分库的形式分开,将不同的租户的数据放到不同的库中。(2) 大的租户的客户数据可能涉及到一个库放不下,可以考虑通过组织结构进行分库,分库原则为单张表的数据能够承受。(3) 小租户可能数据太小,可能涉及到将多个租户的信息分到同一个数据库上面。分表原则按照我们的设计,纵向分库不存放较多的数据,数据两较大时,需要将数据进行导出。我们说的分表一般在横向切片的时候会用的,一个库的一张表能够承受的数据量是有限的,时间久了一张表就不能承受,所以需要将该数据分布到不同的表中,在同一个库中进行保存。案例SAAS表结构案例表结构和分库分表的内容如下:表名表描述是否纳入公共表描述pub_company租户表是租户表数据量少pub_user租户员工表是数据两不会很多pub_branch租户部门机构表是数据量不会很多pub_branchuser租户部门员工表关系表是营业部用户关系表pub_role租户角色表是数据量多,变化不会太多pub_menu租户菜单表是数量不会很多pub_rolemenu角色菜单表是角色菜单数据可能会很多,考虑到功能独立,设为公共模块反洗钱案例-客户风险PS:取了客户风险等级部分表作为例子,没有将所有表结构全部纳入进来。表名表描述是否纳入公共表描述pub_company租户表是数据量不大,不经常变化pub_customer客户表否数量多不适合做为公共表Aml_riskitemdefine风险子项定义表否与其它表关系较紧密Aml_itemscorerule风险子项规则表否与其它表关系较紧密Aml_riskschemedefine风险方案定义表否与其它表关系较紧密Aml_custriskrank客户风险等级落地表否每个客户个性化总结基于以上原则,分库分表都是需要根据具体的业务情况来的,需要结合数据量,实际的系统场景来决定将表进行归类

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论