查看原文
其他

三个避不开的疑问:从传统关系型数据库转向分布式数据库的思考

twt社区 twt企业IT社区 2024-02-18

来自社区交流,供同行参考

对于金融行业是否从传统的关系型数据库向分布式数据库转型有几个疑问:


1、转向分布式数据库的意义在哪?

从业务处理能力、扩展性需求高可用及灾备架构来讲,普通的中小型银行用传统的关系型数据库完全满足业务运行需求,高可用架构通过RAC、ADG等方式也满足金融监管要求,那分布式的优势在哪?

2、分布式数据库的稳定性及可维护性到底怎样?

分布式数据库现在国内各个厂商遍地开花,但是没有经过市场的考验,没有一定时间的运行试错,而且也没有成熟的社区文化和相应的生态,以后遇到问题难道只能找原厂?

3、分布式的硬件需求很高,并不便宜

跟几家分布式厂商做过交流,一方面软件成本并不便宜,而且本来已经在虚拟化环境可以运行的传统关系型数据库要转到分布式数据库就要全部用X86的物理服务器且需要使用固态硬盘,成本上并不占优势。

问题来自社区会员 @某银行DBA


@孔再华 中国民生银行  数据库运维工程师:

我得肯定你的这些问题,都非常好,说明考虑的比较全面。

1、转向分布式数据库的意义在哪?

如果是我,当前关系型数据库完全满足业务需求的情况下,我干嘛要选择分布式数据库呢。那么要选择,也是因为对未来的预期就是集中式数据库已经满足不了业务增长需求了。还有一种需求是上云。因为云环境的横向扩容特别适合。

2、分布式数据库的稳定性及可维护性到底怎样?

当前分布式数据库都还没有很成熟。我们在测试各类分布式数据库的时候,除了性能,可用性也是测得非常详尽的。几乎每个产品都会测到很多不如意的地方,我们会给厂家提出很多需求。这也说明了当前的分布式产品其实在稳定性和可维护性上都是有很大的提升空间的。个人会偏向于生态好的开源产品和开发支持能力强的大厂。

3、分布式的硬件需求很高,并不便宜

分布式的硬件要求看起来很高,确实是这样。不过本来分布式的理念就是横向扩展资源来解决性能瓶颈呀。那么我们能做的就是怎么把分布式的硬件环境利用起来,把分布式数据库当做云数据库,做好多租户,充分利用资源。


@wanglaye 某大型金融机构 项目经理:

1、转向分布式数据库的意义在哪?

银行传统数据库在应对互联网金融场景时遇到了明显瓶颈,在面临交易复杂度和交易频率的大幅提升时,传统数据库能够采取的优化方案非常有限,若仅依靠软硬件升级来提升性能的话,成本非常昂贵。另外,在应对双十一这类特殊交易日时,需要在短期内提升数据库的能力,传统数据库缺乏这方面的灵活性。若仅仅为了应对有限特殊日的流量,而配置很高的性能,又会造成资源的极大浪费。

这就是分布式数据库的意义。灵活、弹性、成本低。

2、分布式数据库的稳定性及可维护性到底怎样?

互联网公司和银行互金业务已经有很多成功案例了。

走开源路线的产品,都开源社区。商业化产品有产品公开课。分布式数据库原理资料网上一搜一大把。所有这些都是自己的团队扩充技能的方面。采购了原厂服务固然好,原厂技术支持是一方面,自己人的技能提升更重要。

3、分布式的硬件需求很高,并不便宜

不知道你们用的哪一款传统数据库,Oracle、Db2这类数据库,全行成本早就上千万了,分布式数据库比这个成本低很多。

虚拟机归根结底是由物理机虚出来的,无论是磁盘IO还是CPU内存都是一台宿主机。既然能在虚拟机上跑,说明业务量还没上去,否则遇到海量高并发读写io的时候,虚拟机早就撑不住了。

并且传统数据库是烟囱型的部署方案,一个系统一套库,各用各的资源,无法互相借用,也会造成很大的资源冗余。而分布式数据库的资源是灵活伸缩的,各业务系统共享一套库,充分利用资源池。


@Amygo 分布式事务数据库  数据库管理员:

1、转向分布式数据库的意义在哪?

(1)架构转型一定要做到:对多数企业而言 坚持  “降本增效,支撑业务创新发展”的原则,对有国家使命的企业单位则 “符合国产替代进口”的原则。

(2) 高可用架构通过RAC、ADG等方式也满足金融监管要求 :关键是否都买了软件许可,是否受国家安全可控的政策要求。

2、分布式数据库的稳定性及可维护性到底怎样?

(1)稳定性:看对方产品在自己本行业内相似业务场景的应用案例数、应用数据规模、应用业务规模、实际健壮性测试等,另外从原理的角度去判别 是否依赖网络、服务器时钟等两个最容易出问题的地方。

(2)可维护性:尤其是数据分片设计优化决定了业务系统运行于分布式事务数据库性能是否最佳,其次日常运维管理、SQL优化(因SQL会被改写而带来性能优化难度)、表索引优化 (因SQL会被改写而带来性能优化难度) 、数据库巡检功能是否具备、数据库排错功能是否具备等,要求分布式事务数据库产品厂商一一拿出产品界面给到你们在线演示看的方式证明自己。

对于数据分片设计优化,可买产品强迫数据库产品厂商免费服务去保障,做不到就扣钱。

3、分布式的硬件需求很高,并不便宜

(1) 虚拟化环境可以运行的传统关系型数据库  则不需要转型 分布式数据库,直接转型MySQL开源数据库的单库即可,可采用类似公有云阿里云RDS产品的。

(2)要求必须普通SSD固态硬盘、NVME SSD固态硬盘 、PCI-E卡的OLTP分布式数据库产品,不仅成本上居高不下,还有数据丢失的风险,网上可以搜索下 DELL、HPE、三星等都发布通知更换SSD固件。建议放弃高硬件成本要求的OLTP分布式数据库产品 。

欢迎点击文末阅读原文到社区讨论交流,发表您的观点

觉得本文有用,请转发或点击“在看”,让更多同行看到


 资料/文章推荐:


欢迎关注社区以下  “分布式数据库”技术主题 ,将会不断更新优质资料、文章。地址:http://www.talkwithtrend.com/Topic/37323


下载 twt 社区客户端 APP


长按识别二维码即可下载

或到应用商店搜索“twt”


长按二维码关注公众号

*本公众号所发布内容仅代表作者观点,不代表社区立场

继续滑动看下一个

三个避不开的疑问:从传统关系型数据库转向分布式数据库的思考

twt社区 twt企业IT社区
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存