加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

MySQL单表数据量超过2000万性能急剧下降的说法靠谱?

发布时间:2019-07-02 02:25:51 所属栏目:编程 来源:梁桂钊
导读:本日,切磋一个风趣的话题:MySQL 单表数据到达几多时才必要思量分库分表?有人说 2000 万行,也有人说 500 万行。那么,你认为这个数值几多才吻合呢? 曾经在中国互联网技能圈广为传播着这么一个说法:MySQL 单表数据量大于 2000 万行,机能会明明降落。事

MySQL单表数据量高出2000万机能急剧降落的说法靠谱?

本日,切磋一个风趣的话题:MySQL 单表数据到达几多时才必要思量分库分表?有人说 2000 万行,也有人说 500 万行。那么,你认为这个数值几多才吻合呢?

MySQL单表数据量高出2000万机能急剧降落的说法靠谱?

曾经在中国互联网技能圈广为传播着这么一个说法:MySQL 单表数据量大于 2000 万行,机能会明明降落。究竟上,这个据说听说最早发源于百度。详细环境或许是这样的,昔时的 DBA 测试 MySQL机能时发明,当单表的量在 2000 万行量级的时辰,SQL 操纵的机能急剧降落,因此,结论由此而来。然后又听说百度的工程师活动到业界的其余公司,也带去了这个信息,以是,就在业界传播开这么一个说法。

再其后,阿里巴巴《Java 开拓手册》提出单表行数高出 500 万行可能单表容量高出 2GB,才保举举办分库分表。对此,有阿里的黄金铁律支撑,以是,许多人计划大数据存储时,多会以此为尺度,举办分表操纵。

那么,你认为这个数值几多才吻合呢?为什么不是 300 万行,可能是 800 万行,而是 500 万行?大概你会嗣魅这个也许就是阿里的最佳拭魅战的数值吧?那么,题目又来了,这个数值是怎样评估出来的呢?稍等半晌,请你小小思索一会儿。

MySQL单表数据量高出2000万机能急剧降落的说法靠谱?

究竟上,这个数值和现实记录的条数无关,而与 MySQL 的设置以及呆板的硬件有关。由于,MySQL 为了进步机能,会将表的索引装载到内存中。InnoDB buffer size 足够的环境下,其能完玉成加载进内存,查询不会有题目。可是,当单表数据库达到某个量级的上限时,导致内存无法存储其索引,使得之后的 SQL 查询会发生磁盘 IO,从而导致机能降落。虽然,这个尚有详细的表布局的计划有关,最终导致的题目都是内存限定。这里,增进硬件设置,也许会带来立竿见影的机能晋升哈。

那么,我对付分库分表的概念是,必要团结现实需求,不宜太过计划,在项目一开始不回收分库与分表计划,而是跟着营业的增添,在无法继承优化的环境下,再思量分库与分表进步体系的机能。对此,阿里巴巴《Java 开拓手册》增补到:假如估量三年后的数据量基础达不到这个级别,请不要在建设表时就分库分表。那么,回到一开始的题目,你认为这个数值几多才吻合呢?我的提议是,按照自身的呆板的环境综合评估,假如内心没有尺度,那么暂且以 500 万行作为一个同一的尺度,相对而言算是一个较量折中的数值。

【编辑保举】

  1. MySQL InnoDB锁先容及差异SQL语句别离加什么样的锁
  2. 详解MySQL数据库5层权限--全局、数据库层、表层、列层、子措施层
  3. 5步选择高机能NoSQL数据库
  4. 超过数据库成长鸿沟,谈漫衍式数据库技能趋势
  5. 高效举办 Oracle 一般巡检之数据库根基环境搜查
【责任编辑:庞桂玉 TEL:(010)68476606】
点赞 0

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读