一直以来,国外企业在云数据库服务领域都保持着较高的市场份额,主流的数据库系统大多采用国外产品。然而,随着我国数据库产品的发展,国产数据库在过去的十年间从默默无闻走上了历史舞台,推动了全球数据库技术的蓬勃发展。今天,我们就带你通过一个国产数据库——ocean base。
1.什么是oceanbase? OceanBase是蚂蚁集团开发的原生分布式数据库。
成立于2010年。连续九年稳步支持双11,创新推出“三地五中心”城市级容灾新标准。这是一个国内原生分布式数据库,在TPC-C和TPC-H测试中创造了新的世界纪录。采用自研集成架构,兼顾分布式架构的可扩展性和集中式架构的性能优势,一套引擎同时支持TP和AP的混合负载。它具有数据一致性强、高可用、高性能、在线扩展、与SQL标准和主流关系数据库高度兼容、成本低等特点。,并帮助金融、政府、运营商、零售、互联网等行业的客户升级核心系统。
一款完全自研的原生分布式关系数据库软件,在普通硬件上具有财务级的高可用性,是首个“三地五中心”城市级故障自动无损容灾新标准,具有出色的横向扩展能力。它是全球首个通过TPC-C标准测试的分布式数据库,单集群规模超过1500个节点。该产品具有云原生、一致性强、与Oracle/MySQL兼容性高的特点。
2.海洋基地这个名字的由来 蚂蚁金服的数据库为什么叫Oceanbase?这个也很有意思。
1、目标远大。
2000年以后,出现了大量的网络化终端,在信息传递、信息交换、信息共享的过程中,产生了大量的数据,学术界称之为大数据。也可以称之为海量数据。海洋基地中的海洋就是海洋,基地就是图书馆。合在一起,海洋基地意味着我们是一个可以容纳海量数据的数据库,也就是说,我们是一个可以容纳大数据的数据库。这说明企业架构之大,战略布局之广。
2.哲学意义
老子在《道德经》中说:“水为万物之善而不争,为万人之恶,故如道也。栖息地,好土地;心,善良;同,善仁;言,诚信;政府,善治;事,能力好;动起来,乖一点。只有老公不打,所以没什么特别的。人无常,心不常有宽,慈如水,在乎其人道的心境,即内静。”水有极高的哲学智慧和生活技能,值得学习,而海洋基地就是一个有着水的美好品格的地方。
3.命名传统
阿里系一直是大格局命名的传统。住在大城市或者出过国的人都有一个毛病,就是喜欢把大商场叫做mall。我的朋友上个月在伦敦玩的时候在一个大商场买了一些东西。阿里打算开网上商城的时候,马云觉得自己的商城是天上的商城,一定要叫天商城。按理说,这种简单的想法应该被所有人拒绝,但马克却用自己的力量改变了中国人的审美观。现在没人觉得天猫这个名字是土生土长的。
3.海洋基地的发展历史 2010年,OceanBase诞生。在项目开始时,目标是创建一个本地分布式数据库。当时业内没有参考方案,使得OceanBase从0到1。 2011年,OceanBase正式进军电商业务,在阿里巴巴电商平台应用,服务了数十家电商平台的业务系统。 2014年支付宝上线,也实现了OceanBase核心交易场景的突破,支撑了历年双11的高峰。 2016年,支付宝和电子商务银行的所有核心业务,包括交易、支付和会计会员,都迁移到了OceanBase。 2017年走出阿里巴巴和蚂蚁集团,开始商业化。南京银行是第一家运营OceanBase的外部客户。 2019年,OceanBase参加TPC-C测试,成绩6088万tpmC,打破原世界纪录;同时开始提供公有云服务。 2020年,OceanBase正式作为独立公司运营,将分布式数据库推向更广泛的行业客户,帮助客户实现分布式架构的变革;同时,TPC-C获得7.07亿tpmC,再次打破自己创下的世界纪录,支持HTAP混载。 2021年,TPC-H实现了1526万QphH@30000GB的成绩,在HTAP能力方面领先业界。加大R&D投入,正式发布社区版,获得4000+明星和1500+人才认证。从金融首选到国计民生;从核心产业到中小企业;从国内客户到海外扩张;积累了400+客户,提供企业级数据管理解决方案。
4.海洋基地的优势 高性能:OceanBase采用读写分离的架构,将数据分为基线数据和增量数据。其中增量数据存储在内存中(MemTable),基线数据存储在SSD磁盘中(SSTable)。对数据的更改是增量数据,只写入内存。所以DML是一个性能非常高的完整内存操作。 低成本:OceanBase通过数据编码和压缩技术实现高压缩。数据编码是基于数据库关系表中不同字段的范围和类型信息的一系列编码方法。它比常见的压缩算法更了解数据,因此可以实现更高的压缩效率。 兼容性高:兼容常见的MySQL/ORACLE功能和MySQL/ORACLE前后台协议,业务可以从MySQL/ORACLE迁移到OceanBase,无需修改或少量修改。 高可用性:数据存储在多个副本中,少数副本的故障不影响数据的可用性。通过“三地五中心”的部署,可以实现市级故障自动无损容灾。 5.海洋基地的核心特征 高可用性 OceanBase数据库将集群中每个节点的数据存储在多个副本中,可以轻松实现高可用性,保证RPO=0,甚至可以异地居住。即使单个节点出现故障,业务连续性也不会受到影响。多副本可以满足从节点、机架、机房到城市级的高可用、容灾要求,克服传统数据库主节点异常时RPO>0的问题。 开口的 OceanBase数据库具有很强的扩展性,可以在线平滑扩容或缩容,扩容后自动实现系统负载均衡。并且扩展或收缩过程对应用程序是透明的。 低成本 OceanBase数据库可以运行在通用服务器上,独立于特定的高端硬件,可以有效降低用户的硬件成本。OceanBase数据库使用基于LSM树的存储引擎,可以在不影响性能的情况下有效压缩数据,并可以降低用户的存储成本。 HTAP OceanBase数据库的分布式并行计算引擎同时优化了OLTP应用和OLAP应用,支持跨数据库节点并发执行DQL和DML,真正实现了一套计算引擎同时支持混合负载。 和睦相处 OceanBase数据库与MySQL数据库生态系统高度兼容。OceanBase 云数据库服务支持MySQL 5.6的所有语法和MySQL 5.7的大部分函数和语法,兼容MySQL 5.7和8.0的所有JSON函数,可以与MySQL业务无缝切换。 多租户 OceanBase 云数据库服务通过租户实现资源隔离,云数据库服务的每个实例不感知其他实例的存在,通过权限控制保证不同租户的数据安全。多租户,结合OceanBase 云数据库服务强大的可扩展性,可以提供安全灵活的DBaaS服务。
6.应用场景 OceanBase的产品定位是分布式关系云数据库服务。蚂蚁金服内部业务经过多年打磨,现已支持蚂蚁金服100%核心交易系统,稳定支持阿里、蚂蚁内部数百项重点业务,以及浙商银行、南京银行等众多外部客户。OceanBase产品适用于金融物业场景,如金融、证券等。,涉及交易、支付、账务,要求高可用性、强一致性,还要求性能、成本、可扩展性,以及各种关系型结构化存储的OLTP应用。OceanBase的自然无共享分布式架构也很好地支持各种OLAP应用程序。例如,OceanBase适用于以下典型场景:
财务数据可靠性要求
在金融环境中,通常对数据可靠性有更高的要求。每次在OceanBase中提交事务,对应的日志总是在多个数据中心实时同步并持久化。即使数据中心层面发生灾难,每一笔完成的交易也总能在其他数据中心恢复,实现真正财务层面的可靠性要求。
适应云数据库服务业务的快速增长
业务的快速增长通常会给云数据库服务带来双重压力。OceanBase作为真正的分布式关系云数据库服务,由独立的通用计算机作为系统的各个节点组成,数据根据容量和可用性自动分布在各个节点中。当数据量不断增加时,OceanBase可以自动扩展节点数量以满足业务需求。
不间断服务
企业持续不间断的服务,通常意味着给客户最流畅的产品体验。分布式OceanBase集群,如果一个节点出现异常,这个服务节点可以自动移除。这个节点对应的数据有很多其他的副本,对应的数据服务也是由其他节点提供的。即使某个数据中心出现异常,OceanBase也能在短时间内将服务节点切换到其他数据中心,可以保证服务的持续可用。
7.未来前景 今年,OceanBase再次亮出底牌,在国产数据库领域取得“破冰”成绩。据了解,此次发布的OceanBase4.0采用了业界首个单机分布式集成架构,融合了分布式架构和集中式架构两者的优势。
单机模式下,与MySQ相比,OceanBase 4.0在硬件性能上达到了更高的水平。此外,OceanBase 4.0在单机模式下取得了比集中式数据库更好的性能,这是业界的首次突破。
OceanBase 4.0,会成为单机和分布式的新拐点吗?
众所周知,虽然原生分布式数据库有着各种先天优势,但是在落地的过程中也面临着两方面的挑战:一方面,在大家的印象中,原生分布式数据库主要适用于大型企业或者大型应用场景,而小型企业使用单机更具性价比。但一旦部署单机,如果后续业务量巨大,再进行结构调整,会进一步增加部署难度。
另一方面,为了保证绝对的高可用性,native distributed 云数据库服务往往以“三份拷贝”的形式部署,也就是说如果企业要部署distributed 云数据库服务,就要同时部署多台服务器。门槛高于单机,选择“分布式”还是“单机”通常是不可逆的。选择单机意味着很难再进行“分布式”部署。
OceanBase 4.0的集成架构可以很好的解决这些矛盾。首先,支持单机部署和小规模部署。这种设计的好处是单节点部署只有一个流程,既实现了单节点的最小配置,又实现了单机和分布式架构的统一。OceanBase 4.0将部署规格降低到4C8G,未来还会进一步降低。