论坛首页 Java企业应用论坛

mysql一个表存多少数据才是性能最高的

浏览 8428 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2012-11-28  

      之前一直不知道InnoDB表中存多少行数据才是性能最高的

      所以问了一些人,也都没有定论;某国内最大的电子商务公司的DBA给了我一个大致的答案,感觉靠谱。所以就在这里和大家一起分享一下。

 

      1. 某国个大牛写了下面这么一段话:

 

      注:非官方给出的公式

 

 

      2. 按照上面的理论,那么我们计算一下bigint为主键表的最大理论行数

          公式1 : (16KB -200) / 8 = 2023 行

          公式2 : 当然,也可以这么算:(16KB)/8 - 200 = 1848行

          因为mysql最高的索引树为三层(表为第一层),那行最大的行数应该为 2023 * 2023= 4092529 行 或 1848 * 1848 = 3415104 行

 

 

因为笔者自己也没有本身测试过,都只是五百万行一分表,听圈里人都说500W是经验值所以笔者也就没有深入的去研究过了。等笔者有时间空了,好好的测试一下,呵呵~

  • 大小: 38.9 KB
   发表时间:2013-03-11  
最多多少行数据没有定论, 有很多影响因素: 逻辑块大小, 硬盘性能, 怎么建Index, SQL有没有写好。。。
0 请登录后投票
   发表时间:2013-03-11  
没有绝对,只能靠经验和实际测试来确定。而且现在基本上不建议分表,数据库差不多都有了分区功能,干嘛非要分表呢。
0 请登录后投票
   发表时间:2013-03-11  
魔力猫咪 写道
没有绝对,只能靠经验和实际测试来确定。而且现在基本上不建议分表,数据库差不多都有了分区功能,干嘛非要分表呢。

这个怎么说呢?查一下mysql的分区实现原理,就可以知道程序上的分区分库比DB的分区要好多少。为什么性能要高了~

还有,就是移值也是非常好的。个人意见,呵~
0 请登录后投票
   发表时间:2013-03-11  
骠骑大将军 写道
最多多少行数据没有定论, 有很多影响因素: 逻辑块大小, 硬盘性能, 怎么建Index, SQL有没有写好。。。

在别的都一样的情况下,只考虑数据量,这个还是有一定参考意义的~
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics