发表于: 2016-10-14 10:16:17
3 2058
2.又做了一波丁师兄那天的面试题,顺便考虑了下分库分表的关键字段怎么设计
2.把读取数据库的注册、登录校验接口整出来。
1.花多了时间去测调面试的sql,没有完成计划2、3
表id就是首先要考虑的因素,前两天看了下uuid的优势,csdn有个搞淘宝第三方的哥们博客里说目前淘宝对接不接受uuid要求整形。个人也觉得uuid那种32节的玩意儿太没效率(建索引速度慢),于是决定id用8字节的bigint。然後可以在service层做个规则将不同区域的IP分到不同的库(DB服务器)去写,降低单库写负载。读操作时可以利用“自定义规则生成值订单id%总库数”定位所属库。
然后,针对查操作较多的字段(如 时间,分类)建立b树索引,这样在select引用到相关字段时,速率会快很多,索引可以是本表多个字段,一张表可以建立多个索引,但是索引本身是占用存储空间的一种额外的数据结构,所以建太多会影响到写性能,因为每次插入都会让索引进行校验和变更。
评论