参加 OceanBase 发布大会

本个月参加 OceanBase 的发布大会感触良多,没想到国产数据库已经这么强大了, OceanBase几乎满足了我对数据库的需求。
最近公司有需求做数据仓库项目,需要把公司各业务线(不同数据库)的数据做汇总分析,为数据同步方案头痛的要死,网上的各种同步方案弊端也很多,一个DBA的我维护起来也很费劲。最后选用了GreenPlum数据库做仓库,自己写了个python 脚本做了个T-1的数据同步,目前能简单的实现数据分析的需求。
“OceanBase 发布大会”提到了联机事务处理 (OLTP)&联机分析处理 (OLAP)融合特性、数据的高压缩比的特性,解决到我的心坎里了。于是让我动了想了解它的念头。
正好在用GreenPlum也是分布式,以GreenPlum的角度去熟悉OceanBase。
(Shared-Nothing)无共享分布式集群架构
OceanBase 数据库:
各个节点之间完全对等,每个节点都有自己的 SQL 引擎、存储引擎、事务引擎,运行在普通 PC 服务器组成的集群之上,具备高可扩展性、高可用性、高性能、低成本、与主流数据库高兼容等核心特性。

GreenPlum 数据库:
Greenplum 是基于 MPP 架构的一款分布式分析型数据库,具备关系型数据库的特点,因为它处理的是结构化的数据,同时具备大数据分布式的特点。
MPP(Massively Parallel Processing)架构是一种用于处理大规模数据的计算架构,它通过将任务分配给多个处理单元并行执行,以提高处理速度和性能。MPP 架构的由来可以追溯到对大规模数据处理需求的不断增长,传统的单一处理器或对称多处理器(SMP)架构无法满足这些需求。MPP 架构允许在大规模数据集上实现水平扩展,通过添加更多的处理单元来增加计算和存储能力。

OceanBase 与 Greenplum
无强弱之分,仅以熟悉的Greenplum 的角度去更快的了解OceanBase
架构特性及扩展方式
- 都是无共享分布式集群架构,每个(zone&segment)均有副本,主宕掉后副本能无感知自动接管;
- 都支持水平扩展,OceanBase:单集群规模超过 1500 节点,Greenplum;
部署方式
- OceanBase 一台物理机上可以部署一个或者多个 OBServer(通常情况下一台物理机只部署一个 OBServer);
- Greenplum 一台物理机上可以部署一个或多个Segment 实例(通常情况下一台物理机部署多个Segment,实现高并发特性);
适用场景
- OceanBase 可应用于“AP”&“TP”融合场景,Greenplum 适用于“AP”场景;
多模多态
- Greenplum & OceanBase 均支持行列存储方式
- OceanBase 基于 LSM-Tree 的高压缩引擎,存储成本降低 70% - 90%;
- Greenplum 高数据压缩比:号称平均能够达到 10:1 以上的数据压缩率。甚至可以达到40:1,极大地节省了数据存储空间。高数据压缩比主要依赖列式存储和 patent-pending 的灵活压缩算法;
连接方式
- Greenplum 通过Master实例是客户端访问系统的唯一入口。Master为单实例
- OceanBase 数据库代理 ODP(OceanBase Database Proxy,又称 OBProxy)是 OceanBase 数据库的接入层,负责将用户的请求转发到合适的 OceanBase 数据库实例上进行处理。ODP 为单独的实例。
- ODP 监听网络端口,兼容 MySQL 网络协议,支持使用 MySQL 驱动的应用直接连接 OceanBase 数据库。
- Greenplum 底层为PG,因此支持使用PG驱动连接数据库
SQL执行方式
- ODP 能够自动发现 OceanBase 集群的租户及数据分布信息,对于代理的每一条 SQL 语句,能尽可能识别出该语句将要访问的数据,并将该语句直接转发到数据所在服务器的 OceanBase 数据库实例。
- Master接收、解析并且优化查询。Master会把定向查询计划分发到单一的一个segment实例。每个segment实例负责在其自己的数据集上执行本地数据库操作。
是否开源
- OceanBase 一直开源;
- Greenplum 从开源走向了闭源;
OceanBase支持向量走向AI

小结
国产数据库学习起来,下一步开始学习部署安装…
欢迎赞赏支持或留言指正





