近日看了一个三方技术网站关于2021年6月国产数据库流行度的排名榜,TiDB、Oceanbase、PolarDB位居榜上前三甲。当然,这个排名榜不一定绝对的客观和真实,但也代表了国内企业在国产分布式数据库选型的一种趋势。作为IT行业的老兵,无论你身在什么行业,位居什么高度,我们都应该透过这个黄榜,来看看导致这一趋势的根本原因在于什么?究竟是这个产品的哪些特性帮助它实现了三甲之名?希望经验者能在以下几个方面提供这些产品可以立于不败之地的特性:
1. 横向扩展的能力以及稳定性如何?
2. 金融交易级的高可用和容灾要求是否可以达标?
3. 底层的存储引擎是什么类型?用户是否可以选择更适合业务类型的存储引擎?
4. 并发控制与读写性能之间是如何均衡处理的?
5. 可以包容的数据类型是什么(表、健值、文档...)?
6. 是否适合大规模的云环境,包括部署及运维的自动化兼容程度?
7. 特定的应用场景和通用的应用场景都能达到什么样的性能指标?
8. 针对MySQL、Oracle之类数据库的兼容性,迁移的难易度如何?
在以上诸多方面,其他的国产数据库果真相差很多么?比如说GaussDB、TDSQL、SequoiaDB等等。相信用实实在在的技术特性、参数以及实践案例描述排出来的名次或者报告更可靠,愿大家各献薄力,完善一份属于技术人内心当中的“技术榜”。
个人看法,国产分布式数据库大多数都是消化吸收主流开源数据库二次开发,最后胜出的应该是在企业有大规模应用案例的,至于所谓的榜单,仁者见仁,智者见智了;
收起建议您可以看下,对于OB的解读很准确:https://zhuanlan.zhihu.com/p/406892068。 从一个DB2 DBA的角度来说, OceanBase实现了: DPF(share nothing and 分布式事务)+HADR(容灾)。目前从外部对OB的观念来看,仅仅是 OLTP应用,但是本质上OLAP的方面也是非常强大(宣传不到位,毕竟存在DPF的基因,因此对于特定应用,需要了解OB的tablegroup & 复制表的概念,尽量避免分布式事务,但无法避开网络开销(日志在备节点redo,每种框架都有自己的缺点和长处,这个只能根据业务做取舍,但OB支持了支付宝双11,相信这样的场景世界上也没有几家。),需要数据库架构师了解应用做特殊配置,anyway,本质和Oracle一样,为了避免某些功能缺失,你的应用也需要做适配(Oracle目前仅仅是存在先行者优势而已,在我看来))。 目前OB在同一集群兼容MySQL & Oracle, 依赖于OB提供租户级别资源隔离能力,本质可以看作为AIX上LPAR的概念,对于有50+数据库应用的中小企业,一套OB集群能解决您的所有问题,目前外部客户选择他的原因在OB以前都没有想到的是: 云上 降本增效,降本比例高达42%,仅仅是硬件资源的节省,而在私有云场景,估计会更多,固然OB自身使用的机器配置要相对高一些,但相比您搭建的几十套常规MySQL主备容灾方案,在人力投资和硬件投资上,一算便知。
另外不得不提的一点是: 掌握OB本身的操作技能需要一个专业DBA 3个月左右时间。
收起一些现实的问题会制约国产数据库的发展和使用。
1、广大的技术人员。如果市场上寻找运维和开发人员较难,那么企业很担心数据库的运维保障。
2、应用程序的支持。这是企业选择数据库最直接的原因。
3、生态环境。有各种社区和渠道,可以交流提升。
4、企业的宣传和推广。经常做活动大力宣传,免费或低价发送学习资料和培训券。
作为一名AI助手,我可以为您提供以下关于国产数据库在银行行业的应用方面的建议:
总的来说,国产数据库在银行行业中的应用需要具备高可用、高稳定性、高并发、多种存储引擎、多种数据类型、云环境兼容性、特定应用场景和通用应用场景的能力,并且需要具备良好的兼容性和迁移难易度。在这些方面,TiDB、Oceanbase、PolarDB等国产数据库相对其他国产数据库更具优势。