数据库的分库分表,可能真的要退出历史舞台了!

作者: 程序员Hollis分类: 计算机技术 发布时间: 2023-11-07 22:56:37 浏览:33536 次

数据库的分库分表,可能真的要退出历史舞台了!

哔哩辉夜姬:
前几天才刚过完成了对公司老系统的分库分表分片的整体改造[doge],原单表、一天进几千万条单量数据,我能不分吗,up主你说,原表都几十亿往百亿数据量去了,迁移都赶不上增量,我能不分吗

【回复】回复 @陶冶metoo : 看是什么数据库,如果是oracle(准确说这年头事物型数据库如果没有分区功能那这数据和玩具没什么两样)可以上分区按购状态和购票时间分区(状态要么成功要么退款要么失败),就这种数据量目前oracle非常古老的11G按这种分区可以‘单表‘至少100亿,要是还是扛不住还可以水平切表(不过oracle版本至少要到12C以上)使用sharding技术,另外车票价格很少变动,除了个人的年龄体重购票时间等数据在变化外,剩下大量数据可以允许用户查询1年以内的数据,这1年的数据是有能力存放到内存型数据库中的(ck、oracle in-memory、spark、hana....这些个数据库数据压缩能力都特别强),我的思路和你是一致的,我们公司的最大问题是要拿这些数据进行实时OLAP业务[无语](BI图表、各个条件下的人数人次统计、各种某某使用占某个条件下的人数或人次占比),目前是T+7还有机会提前计算存储到一个中间结果表方便顶层应用来读取增量计算存储的结果表,T+3也可以勉强使用不过要放弃某些业务计算,最可怕的是T+1实时计算已经不知道该怎么办了[喜极而泣]
【回复】你们公司都日进斗金了,多花点钱上分布式数据库不就解决了[doge]
【回复】回复 @b站考了66分 :有查询,人家要查单证的,就像你在携程买的机票,不仅有查询单证 还有更新状态和退单操作[doge]
-yyw-:
我觉得就是观念的问题,能用分库分表说明公司的业务量巨大已经是日进斗金了,那花点钱上分布式数据库不就可以了。而且十天半个月就能迁移到新数据库,跟雇一堆码农花半年升级改造,成本上也是前者更划算。至于码农的就业也不会受到影响,只是从做业务的公司转移到做数据库的公司,当然门槛变高了。

【回复】分布式数据库也是分库分表[doge]
【回复】还有就是数据库厂商的观念也要跟上,能打败 Oracle 的不只是技术,服务也必须跟上,要大量招聘开发和运维,任何一个客户用了自己的产品,都必须派驻一个小组 7x24 小时给人家把数据库看好了,这样子人家才能放心的用。
【回复】回复 @也有不同吗 :你说的是tdsql吧,tidb不是分库分表实现的
bvoodnuq:
你管这叫退出历史舞台?咱俩学的是同一门语文吗?

【回复】感觉分享的知识,配不上简介的 title
我有孤独和美酒c:
分布式数据库的架构一般是主从。这要求多个节点的数据是一致的。而且分布式数据库的应用场景在于读压力太大。而在分库分表中,水平分表要解决的问题是单表过大,所以要拆分成多多表。而水平分库和垂直分库要解决的问题是单台机器压力过大,所以需要切分数据,所有机器加上来是完整的数据。而分布式数据库是每台机器数据都一致! 所以不是说分布式数据库取代了分库分表,而是在水平分库这一列由于数据切分导致的事物和join问题,所以引入了分布式数据库。 但是单表过大的问题分布式数据库是无能为力的。

【回复】对的[doge],分表解决的是单表数据量太大的问题,分表当你到达十亿以上的单表数据是绕不过的坎,更别提网商万亿级别的数据
【回复】一样是可以切片的,内部结构类似redis的三主三从
minisgi:
优化的方案里有几种还是分库分表,真是什么人都出来拍视频。技术架构一定是要根据需求来设计的,up听说过tidb、flink吗

【回复】flink实时计算的吧,能分库分表吗
【回复】[doge]up肯定知道,tiDB你们公司用了么,公司DBA确定没问题?flink和分库分表有啥关系捏
【回复】只有中国喜欢分库分表的骚操作
shidedisda:
分库分表确实很麻烦,应该对应用层透明,所以绝对会过时[doge]

【回复】回复 @垃圾营销号 :来一个[doge]我用过的都需要进行一定的配置而且还需要了解其中一定的非mysql自身逻辑才能正确使用
【回复】回复 @shidedisda :不是很理解你说的分库分表很麻烦,应该对应用透明是啥意思,分库分表和应用透明有关系吗?分库分表注定不会被淘汰,都是实体库,内存满了之后需要进行分库这是必须的,不能再给服务器加内存吧?加的服务器房间都放不下了呢?比方说总不能我一个网站就让一百万人注册吧?没内存了之后那第一百万零一个人你不能注册,怎么可能会淘汰?
【回复】回复 @shidedisda :回复 @shidedisda :怎么做不到透明?不是很理解你说的单机库是啥意思,大兄弟你用过mycat吗?mycat分库分表对于使用层来说一样的,就和之前对一张表curd是一样的,只不过就是把数据给到了mycat它会自动进行分库或者分表存储,咋就不透明了?咋就和之前不一样了?并且配置的都是node节点,其实也就是主从复制或者mysql集群的节点,mycat这个中间件都能自己写出来,又不是啥高级的功能,只不过人家给写好了,形成了一个标准
Weixxuxu:
就这还出书????水平顶多培训出来有3年工作经验的。

【回复】培训机构的,估计会来事就留下来一起骗人了
gas_:
我最初是从读写分离,到Cobar,mycat,再到shardingJDBC确实发现近几年关注度变低了。各种分布式的,列式存储的,时序的,实时入仓入湖等等新技术的出现

白白三岁:
退出历史舞台,后来者呢?水有意思?

lc的问:
狗,我还以为有啥好东分享,靠标题吸引没啥实质性内容浪费时间,拉黑[doge][doge]

程序员 学习 计算机 数据库

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!