业务中基本上都会有字典表,就上我们建立的order表的status字段,字典表一般改动不大,而且所有分片都要用到,这种表适合于Mycat全局表,无需对数据进行切分,只要在所有分片上保存一份数据即可,这样就可以避免跨库join。
修改schema.xml配置
|
|
业务中基本上都会有字典表,就上我们建立的order表的status字段,字典表一般改动不大,而且所有分片都要用到,这种表适合于Mycat全局表,无需对数据进行切分,只要在所有分片上保存一份数据即可,这样就可以避免跨库join。
|
|
分片规则是这一类数据库中间件比较重要的部分了,Mycat提供了一些常用的分片规则,正常情况下应该是够用了。没法全部涉及到,我们挑一些学学,这一章来看一下最简单ID取模,具体的配置在第二章已经讲了,这里就不再贴出来了,测试项目上一章也已经建好,直接撸代码吧。
|
|
之前已经把Mycat环境准备完毕,现在我们新建个Java项目,用于后面的测试。项目使用SpringBoot和Mybatis,SpringBot搭一下很容易,但是官方没有提供mybatis starter,不过maven仓库有,下面就贴一下核心配置。
项目中需要进行参数验证是件很平常的事儿,Validation框架也已经帮我们做的很好了。但是,为了更贴近业务需求又或者不想为了验证而去写个Bean,所以还是想自己实现个简单的验证功能。项目基于SpringBoot,具体怎么搭建没啥好说的了,下面挑涉及到的几个点,截取项目中的部分代码来展示下是如何实现的。
上一章我们对Mycat配置有了个初步的了解,现在我们就基于之前的配置,并且模拟一个简单的订单场景,来跑通Mycat。假设我们构建2000万条订单数据,需要以id mod运算之后存储到两台Mysql中,下面我们就一步一步的来实现。
|
|