存商品授权的 每个门店对应每个商品的授权 现在有 8000 多商品 7000 多家门店 目前已经有 1800 多万条数据了 要怎么破 即将到性能瓶颈了
![]() | 1 zoharSoul 2020-05-08 18:26:18 +08:00 加钱呗 阿里云 rds 4c8g 的我试过单表 2 亿多数据, 单表查询没啥压力 |
![]() | 2 cominghome 2020-05-08 19:49:44 +08:00 @zoharSoul 4c8g 能搞 2 亿行?这么猛的吗?还是说字段少? |
3 Nitromethane 2020-05-08 20:03:13 +08:00 数据同步到 ES 一份,读请求走 ES ; |
4 peyppicp 2020-05-08 20:08:40 +08:00 按照门店 id 分库分表,水平拆分到 101 个库里,表变为逻辑表,单表 18w 数据 |
![]() | 5 wqhui 2020-05-08 20:19:54 +08:00 分表呗,读频繁的话就做主从读写分离或者用缓存 |
![]() | 6 opengps 2020-05-08 20:39:56 +08:00 via Android 表分区,分表,分库,集群 就这么个优化路线 |
![]() | 7 sagaxu 2020-05-08 20:41:40 +08:00 via Android 才 2000 万就慢,分表没用 |
![]() | 9 vinsa 2020-05-09 01:16:05 +08:00 才 2KW 数据怕啥,分个区就好了,还能上个 10 倍,主键查询瞬回。 |
10 sonxzjw 2020-05-09 08:15:55 +08:00 简单,分表分库 |
11 yc8332 2020-05-09 08:48:19 +08:00 这种东西存下来后面不都是走缓存的吗 |
![]() | 12 pmispig 2020-05-09 09:12:09 +08:00 上 ssd,上好的 ssd,换 cpu 换主频高的 cpu |
![]() | 13 fareware 2020-05-09 09:34:08 +08:00 2kw 慢不是硬件或者设计问题吗? |
![]() | 14 mymike 2020-05-09 09:56:25 +08:00 根本没必要分库分表 ES,硬件性能与配置可能需要调整下,其实单机上亿没有丝毫问题 |
![]() | 18 zoharSoul 2020-05-09 10:16:35 +08:00 ![]() |
![]() | 19 encro 2020-05-09 10:19:16 +08:00 所有的 mysql 慢问题的三个常规操作: 1,慢日志; 2,慢日志分析工具; 3,explain ; |
![]() | 21 xuanbg 2020-05-09 10:22:43 +08:00 难道每个门店都是专有的商品?看着也不像啊,1700 门店才 8000 种。应该是大部分商品所有门店都有,小部分商品某些门店专有吧? 如果这样的话,可以给权限分级别啊。譬如分为:公共、分组、门店这么几个级别。公共的就是所有门店都能访问;分组的就是要有组权限的才能访问,组权限就是给门店分组,按分组授权;门店的就是指定门店才能访问,和你现在的做法一个样。这样你的权限关系表就能缩减几百倍的数据。我估计有个几万行就足够了。 |
![]() | 22 novaa 2020-05-09 10:30:05 +08:00 常规操作索引优化 长远考虑还是的话水平分吧 |
![]() | 23 encro 2020-05-09 10:44:32 +08:00 ![]() |
25 Michaelssss 2020-05-09 11:11:21 +08:00 单表也就 2GB 左右大小把。。都 0202 年了,MySQL 已经不是你想的那种弱鸡了 |
![]() | 26 realpg PRO 垃圾服务器,单表 4200 万无性能压力啊 还是执行有问题 |
![]() | 27 realpg PRO |
28 gemini767 2020-05-09 11:42:22 +08:00 @zoharSoul 百万数据分库分表确实加戏,但是上亿数据单表查询也是牛了。。个人经验千万数据业务稍微复杂,rt 抖动的就非常大了,生产风险很大。 |
29 ylsc633 2020-05-09 12:09:20 +08:00 2kw 就瓶颈了...... 肯定是你索引建的不对或者 sql 写的有问题! |
![]() | 30 collery 2020-05-09 13:49:05 +08:00 不仅要看行数,还得看数据量大小了 |
![]() | 31 xcstream 2020-05-09 13:55:46 +08:00 查询方式有问题吧 可以先查 id 再 id 查数据 |
![]() | 32 Evilk 2020-05-09 15:07:15 +08:00 @Michaelssss 是的,我们最近才升级了 MySQL8.0,而且现在硬件性能已经很好了 |
33 Erroad 2020-05-09 15:12:08 +08:00 2kw 慢不是单表的原因了 |
35 kiddingU 2020-05-09 17:28:38 +08:00 1 、分表分库 2 、优化查询 3 、查询可以走 ES |
![]() | 36 gaocheng 2020-05-09 17:39:57 +08:00 没有什么事情是钱解决不了的,如果还是解决不了就是钱没花到位无论是请人还是买设备买服务 |
![]() | 37 ccnccy 2020-05-09 18:05:13 +08:00 via iPhone 没索引吧,有的话,应该不会太慢。 |
38 fengya68 OP 慢日志高于 0.1 秒的没有,并发一上来 还是会导致卡顿的,还是得好好排查下其他问题 |
39 fengya68 OP @realpg 阿里云通用服务器 8 核 16g cpu 没满过 就是偶然会卡一下 阿里云的服务器还是可以的 慢日志也没有 设置 0.1 秒 |
![]() | 40 shenjixiang 2020-05-09 20:14:58 +08:00 数据量大了最好优化下 mysql 的默认配置,可以按门店 id 做做表分区 |
41 zhuweiyou 2020-05-09 21:52:56 +08:00 应该是没索引 |
43 yukiloh 2020-05-10 14:20:44 +08:00 via Android 去年看到别人评价数据库说两千万是瓶颈 现在直接两个亿,这么给力的吗… |