一。分区
创建年表和分区:
分区方案
分区表是由多个相关的底层表实现,这些底层表也是由句柄对象表示,所以我们也可以直接访问各个分区,存储引擎管理分区的各个底层表和管理普通表一样(所有的底层表都必须使用相同的存储引擎),分区表的索引只是在各个底层表上各自加上一个相同的索引,从存储引擎的角度来看,底层表和一个普通表没有任何不同,存储引擎也无须知道这是一个普通表还是一个分区表的一部分。这个方案也不错,它对用户屏蔽了sharding的细节,即使查询条件没有sharding column,它也能正常工作(只是这时候性能一般)。不过它的缺点很明显:很多的资源都受到单机的限制,例如连接数,网络吞吐等。如何进行分区,在实际应用中是一个非常关键的要素之一。在我们的项目中,以客户信息为例,客户数据量5000万加,项目背景要求保存客户的银行卡绑定关系,客户的证件绑定关系,以及客户绑定的业务信息。此业务背景下,该如何设计数据库呢。项目一期的时候,我们建立了一张客户业务绑定关系表,里面冗余了每一位客户绑定的业务信息。基本结构大致如下:
二。分库分表
如何进行分库分表,目前互联网上有许多的版本,比较知名的一些方案:
但是这么多的分库分表中间件方案,归总起来,就两类:client模式和proxy模式。
三。选择建立索引
三。sql优化
推荐阅读:
https://blog.csdn.net/rongtaoup/article/details/82457544
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69949806/viewspace-2901330/ ,如需转载,请注明出处,否则将追究法律责任。