标签:管理 查询 订单 信息 分库分表 索引 数据库 当当网 select
mysql数据上限 5000万 超过性能急剧下降
提升效率;
字段长度
字段类型
sql优化
索引
减少DDL语句(表的修改等)
分库分表:处理数据过大查询慢
垂直拆分(userid放用户库 orderid放订单库) 存在表性能瓶颈 不易扩展 事物处理复杂(不同库 事物)
水平拆分(orderid % 3 = 具体库的库 ) 分片事物
分库分表: 都有事物问题 跨库跨表Join问题 多数据源管理麻烦
分布式事物 :一致性hash算法
跨库join是共同难题 性能问题 尽量少使用多表join
解决方案:
mycat proxy可以帮忙命中db (ha高可用) (阿里的mycat-cobar、)
driver (当当网的sharding-jdbc:先分片规则配置-> JDBC规范重写 -> sql解析 sql路由(id信息%10) sql改写 执行(select * from db0.user) ->归并)
分片规则:
分片的列:userid
配置分片数据库表算法:ds_$->{userid % 2}
qps
标签:管理 查询 订单 信息 分库分表 索引 数据库 当当网 select
原文地址:https://www.cnblogs.com/webster1/p/9332776.html