云数据库OceanBase,分布式数据库较好的解决方案

以往数据库如果数据量多了,单表超过500万,性能就急剧下降,这时候如果需要扩展要怎么样呢?常规来说就是分库分表,进行各种横向拆分,纵向拆分,来进行数据分流处理,这需要就技术开发者技术能力要求较高,也会进行系统重构等。

各个厂商尝试过数据库中间件,什么是数据库中间件,其实就是各个数据库服务器,数据库中的一个调度处理,程序连接数据库时直接连接这个中间件,而不直接连接数据库,由这个中间进行中间调配,例如插入一条数据,中间件自行决定插入到那台数据库服务器,并且进行归纳整理,便于后续查询。

最终从数据库中间件演化成了云数据库,这就是OceanBase的理念的由来。

OceanBase 云服务(OceanBase Cloud Services)是构建在云基础设施上的公有云数据库服务,可基于公共云环 境进行部署,提供PB 级存储容量、万亿级单表记录、主流数据库兼容、极致弹性、异地容灾等金融级核心能力。 支持一站式部署、扩容、监控运维管理、开发工具、数据迁移、备份恢复等端到端数据库服务化解决方案。

OceanBase 最初是为了处理淘宝网的大规模数据而产生的。传统的 Oracle 单机数据库无法支撑数百 TB 的数据存储、数十万的 QPS,通过硬件扩展的方式成本又太高。

淘宝网曾使用 MySQL 取代 Oracle,但是需要进行分库分表来存储,也有很多弊端。通过分库分表添加节点比较复杂,查询时有可能需要访问所有的分区数据库,性能很差。

淘宝网甚至考虑过HBase,但是 HBase 只能支持单行事务查询,且不支持 ACID 特性,只支持最终一致性。而淘宝网的业务必须支持跨行跨表业务,且一些订单信息需要支持强一致性。

基于以上原因,这就需要开发一个新的数据库,既要有良好的可扩展性,又能支持跨行跨表事务,OceanBase 就应运而生了。

有些小伙伴对云数据库的概念可能还是有点模糊,可能还以为是一个数据库集群开出来的一个数据库,从外来看是这样,但内部截然不同。

posted on 2022-01-21 10:35  鱼塘总裁  阅读(270)  评论(0编辑  收藏  举报