关于分库分表的分歧

2020-09-29 16:27:04 +08:00
 linxiaoziruo

公司新来 DBA,一直在强调目前数据量没必要分库分表。我们目前最大的单表数据量是 1 亿,整个库的数据文件大小 1 个 G 。 我不太能理解分库分表的界限在哪里,到了这个界限会引发哪些性能瓶颈?

3175 次点击
所在节点    Java
17 条回复
ruanimal
2020-09-29 16:52:09 +08:00
数据文件这么小,不分表也没啥吧
linxiaoziruo
2020-09-29 17:02:43 +08:00
@ruanimal 笔误,是一个 T !
optional
2020-09-29 17:04:42 +08:00
看负载啊,负载不高干吗分
xsm1890
2020-09-29 17:08:00 +08:00
我去,一亿数据就一个 T,我司一亿五千万总文件才步到六十个 G 。是不是存太多大字段了,冗余字段了。感觉这才是需要优化的地方
xx6412223
2020-09-29 17:11:42 +08:00
瓶颈是业务来定义的。
xsm1890
2020-09-29 17:12:44 +08:00
如果索引数据五五开的情况下,平均行长度达到了 5000bit????一个数据页就 16kb,个人觉得很不合理啊
opengps
2020-09-29 17:14:12 +08:00
犯不着纠结这个,总量可控,读写结构合理,那么分不分表对于性能的影响可能真的很小,或者说实在想优化下,可以进行表分区(表分区的优势是对外表现仍然是单表结构)
linxiaoziruo
2020-09-29 17:17:36 +08:00
@xsm1890 兄弟,1 亿数据是单表数据,1T 数据是整个库
mightofcode
2020-09-29 17:34:53 +08:00
这点数据分个毛
cheng6563
2020-09-29 17:35:39 +08:00
1 亿数据,没范围查询,不嫌插入慢就没啥必要分吧。
th00000
2020-09-29 17:37:23 +08:00
同意 5 楼 3 楼 看法
分库分表是根据业务来的, 要知道业务的瓶颈在哪里, 然后才能决定怎么分
然而你 1 亿 的表 不是你们业务的瓶颈你分他干啥
cco
2020-09-29 17:38:51 +08:00
用到必须得分库了再去分,不要过度设计。
zhihhh
2020-09-29 17:48:02 +08:00
太小了的确不用分。
sanggao
2020-09-29 17:51:27 +08:00
你这高度理解不了 dba 的决定
snappyone
2020-09-29 22:21:44 +08:00
界限就是性能可能顶不住了就考虑拆分
polyang
2020-09-30 11:15:55 +08:00
同意 15 楼的观点,不是达到多少数量量就一定要分库分表,主要看性能,性能不行了,没办法从其他方面优化了,可以考虑分库分表
wakzz
2020-09-30 11:52:41 +08:00
楼上正解,主要看业务场景。有的表仅仅是做存储几乎不读,简单搞个冷备份就行了。如果当前业务场景下性能没问题,就暂时没必要为了分库分表而分库分表,毕竟分库分表就意味着风险和代码重构。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/711620

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX