全局表

全局表的作用
  在分片的情况下,当业务表因为规模而进行分片以后,业务表与这些附属的字典表之间的关联,就成了比较棘手的问题,考虑到字典表具有以下几个特性:   

  1.   变动不频繁
  2.   数据量总体变化不大
  3.   数据规模不大,很少有超过数十万条记录。   

鉴于此,MyCAT 定义了一种特殊的表,称之为“全局表”,全局表具有以下特性:

  1.    全局表的插入、更新操作会实时在所有节点上执行,保持各个分片的数据一致性
  2.    全局表的查询操作,只从一个节点获取
  3.     全局表可以跟任何一个表进行 JOIN 操作

全局表配置(配置所有可能用到节点)

<table name="TBL_LOG" primaryKey="ID" type="global" dataNode="dn1,dn2" />

全局表说明
 1、准对Select操作,mycat会随机现在一个节点输出结果内容;
    2、准对Insert-Update-Delete操作,Mycat会操作所有节点

E-R分片表

也称为父子表,主外键关联表;处理存在2种请求对应关系。

1、父表的分片字段是子表的外键字段:

  这种情况下,父表通过分片字段查询能很快定位到数据库的位置提高查询性能;子表通过父表ID也能很快定位到分片服务器数据库地址;

<table name="ORDER1" primaryKey="ID" dataNode="dn1,dn2" rule="mod-long">
<childTable name="ORDER_DETAIL" primaryKey="ID" joinKey="ORDER_ID" parentKey="ID" />
</table>

2、父表的分片字段不是子表的外键字段:

这种情况下,父表通过分片字段查询能很快定位到数据库的位置提高查询性能;子表通过父表ID查询时,Mycat将遍历所有节点数据,实现数据查询;

<table name="ORDER2" primaryKey="ID" dataNode="dn1,dn2" rule="province-str">
<childTable name="ORDER_DETAIL2" primaryKey="ID" joinKey="ORDER_ID" parentKey="ID" />
</table>

最新文章

  1. PHP 高级编程(2/5) - 反射API
  2. Elasticsearch 管理文档
  3. Octopus系列之更新历史记录
  4. (转)window.location.search的用法
  5. js实现鼠标拖拽div-------Day44
  6. mxgraph进阶(二)mxgraph的初步介绍与开发入门
  7. appium框架之bootstrap
  8. git版本冲突解决
  9. IOC 和DI的区别
  10. HDU6201
  11. 使用git命令创建分支到团队项目
  12. 发送邮件--MFMailComposeViewController
  13. C# 文本转语音,在语音播放过程中停止语音
  14. Windows中的键盘快捷方式大全
  15. JQuery元素选择
  16. 【BZOJ】1630: [Usaco2007 Demo]Ant Counting(裸dp/dp/生成函数)
  17. 【LA2238 训练指南】固定分区内存管理 【二分图最佳完美匹配,费用流】
  18. mysqld_safe之三言两语
  19. java—连连看-实现消除
  20. 滚动锁定 scroll lock 键有什么用?

热门文章

  1. IDEA升级版本后界面出现变小,字体变细的问题解决
  2. go实现dgraph的各种操作
  3. 一、TensorFlow的简介和安装和一些基本概念
  4. Hadoop 生产配置文件V2
  5. Tomcat系列(3)——Tomcat 组件及架构核心部分 4类主要组件(顶层,连接器,容器,嵌套)
  6. 桥接模式-Bridge(Java实现)
  7. k8s网络之Calico网络
  8. Mathematica 代码
  9. 使用容器编排工具docker swarm安装clickhouse多机集群
  10. [C++]UVaLive7324 ASCII Addtion