暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

易鲸捷QianBase与Oracle,完全不同的两种技术架构

近日,网上关于数据库厂商易鲸捷贴牌甲骨文上线银行核心系统项目的事件传得沸沸扬扬,惊动了整个技术圈。对于此事件,网络上出现两种不同的声音,一种是不假思索直接引用原文指责假国产数据库的,另一种则是认为国产数据库厂商必须要走一段艰难的创新之路(易鲸捷就是这样的一家企业)。笔者作为一名数据库技术从业者,根据个人对数据库的理解和公开技术资料对易鲸捷QianBase数据库和Oracle数据库做一个架构上的对比。

众所周知,Oracle数据库是世界上最流行的关系型数据库,诞生于19世纪70年代。历经40余年的应用与发展,如今已经在国内外各个行业的各大业务系统中根深蒂固,支撑底层重要的数据存储和数据获取的价值。结合国外主流的高端硬件如IBM小型机、EMC存储等,Oracle更是形成了一套完善的安全可靠的金融行业在线交易系统解决方案,在国内外的大型金融机构动辄卖出千万乃至上亿的价格。

从技术的角度,最初的Oracle数据库是一个只能部署在单台服务器上的数据库软件,我们称之为单机数据库系统。伴随着全球技术日益更新迭代,为满足数据量与业务量不断增长的需求,Oracle9i版本首次引入了RAC架构,RAC实现了多个物理服务器共享同一个数据库,并且提供了自动容错和扩展性。Oracle RAC本质是一种共享存储架构数据库系统。这种共享存储架构虽然解决了单机数据库的瓶颈问题,但由于架构本身的限制,其扩展能力仍然是有限的,一般不会超过20个节点。

无论是单机的Oracle数据库系统,还是基于共享存储架构的Oracle RAC,始终还是属于集中式数据库系统。然而,随着互联网的发展以及5G时代的到来,集中式数据库系统终究是满足不了这个数据量爆发式增长的所有业务场景。分布式数据库技术应运而生,基于分布式架构的产品也不断问世,如基于MPP架构的GreenplumVertica等分布式OLAP类产品,基于云原生架构的SpannerTiDB等分布式OLTP/HTAP类产品。分布式数据库系统很好的解决了海量数据扩展性的问题,少则几百个节点,多则上千上万个节点,仅使用一套分布式数据库系统就能够完美的支撑。

-数据库从集中式到分布式的架构演变

通过公开的资料显示,易鲸捷QianBase数据库的整体架构是一种类似于Google Spanner云原生分布式架构。这种架构是一个完全的去中心化架构,也就是说在数据库多个节点中没有一个节点是中心节点,所有节点完全对等,因此可以容忍任意节点出现故障却不影响数据库的正常运行。它也是一个shared nothing无共享的架构,每个节点都有自己独立的资源来处理节点上的数据。

-易鲸捷QianBase的架构


这里引用一些易鲸捷官方微信公众号发布的有关QianBase数据库的相关内容。易鲸捷QianBase分布式数据库的主要特性有:

(1) 彻底去中心化。易鲸捷QianBase数据库是一个完全去中心化的架构,集群没有中心节点,保证任意节点故障业务不受影响。

(2) 一致性备份恢复。与一般数据库备份恢复不同的是,备份不需要单独备份元数据、活跃事务列表以及日志文件,备份比较简单且效率高。

(3) 在线模式变更。能够支持在线数据模式的变更,在生产环境正常运行的过程中修改表结构完全不影响业务的正常运行。

(4) 系统高可用。不同于传统数据库的数据同步方式,如OracleADGPostgreSQLWAL流复制等,QianBase数据通过Raft多数派一致性协议进行内部同步,保证数据的冗余和高可用性。

(5) 跨中心容灾。同样是基于Raft多数派复制技术,易鲸捷QianBase数据库可以把数据的副本放置在不同的地域位置,进而实现跨数据中心的容灾方案如两地三中心等。

(6) 内部自治数据透明。易鲸捷QianBase底层的数据是以Range为单位进行存储和管理,数据库内部有多种机制对Range进行自动管理,如Range的拆分与合并、负载均衡、热点自动处理等。

综合以上所述,无论是从技术实现架构上面,还是具体的技术实现细节上,易鲸捷公司的QianBase数据库与Oracle压根是两款八竿子打不着的产品路线,因此网上流传的易鲸捷QianBaseOracle上贴牌这件事儿,作为一个技术人员的角度来看,是子虚乌有的事情。


文章转载自数据源的技术后花园,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论