前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >GreenPlum闭源?可以了解一下国产CBDB(Cloudberry Database)

GreenPlum闭源?可以了解一下国产CBDB(Cloudberry Database)

作者头像
AiDBA宝典
发布于 2024-06-07 11:20:42
发布于 2024-06-07 11:20:42
1.1K0
举报

简介

Cloudberry Database(可简称为“CBDB”或“CloudberryDB”)是面向分析和 AI 场景打造的下一代统一型开源数据库,搭载了 PostgreSQL 14.4 内核,兼容 PostgreSQL 和 Greenplum Database 生态,采用 Apache License 2.0 许可协议,由北京酷克数据HashData科技有限公司开发,目前源码已公开。

️GitHub 地址:https://github.com/cloudberrydb/cloudberrydb ️官网主页:https://cloudberrydb.org/

官方文档:https://cloudberrydb.org/zh/docs/

厂商

酷克数据

官网

https://cloudberrydb.org/zh

微信公众号

HashData

总部城市

北京

2023年7月14日,Cloudberry Database v1.0.0 发布。

产品特性

多场景高效查询

  • Cloudberry Database 支持用户在大数据分析环境和分布式环境下进行有效的查询:
  • 大数据分析环境:Cloudberry Database 使用内置的 PostgreSQL 的优化器,可更好地支持分布式环境。这意味着它能够在处理大数据分析任务时产生更高效的查询计划。
  • 分布式环境:采用开源优化器 GPORCA 优化器,经过特定适配,可满足分布式环境下的查询优化需求。
  • 提供分区静态和动态减裁、聚集下推、连接过滤等技术,以帮助用户获得快速、精确的查询结果。
  • 提供了基于规则的查询优化手段和基于代价的查询优化手段,帮助用户生成更高效的查询执行计划。

多态数据存储

Cloudberry Database 支持多种不同的存储格式,包括 Heap 存储、AO 行存储、AOCS 列存储,用于不同的应用场景。同时,Cloudberry Database 还支持分区表,用户可以按照某个条件定义表的分区方式,查询时根据查询条件自动过滤不需要查询的子表,提高数据的查询效率。

多层次的数据安全防护

Cloudberry Database 加强对用户数据的保护,支持函数加密解密,以及透明数据加密和解密。透明数据加密解密指在用户不感知的情况下,加密解密过程由 Cloudberry Database 内核完成,目前可以支持的数据格式包括 Heap 表、AO 行存储、AOCS 列存储。同时加密算法除了常用的 AES 等算法以外,还特别支持国密算法,用户可以方便的扩展自己的算法到透明数据加密中。

数据加载

Cloudberry Database 提供了一系列高效且灵活的数据加载解决方案,以满足各种数据处理需求,包括并行化和持久化的数据加载、支持灵活的数据源和文件格式、集成多款 ETL 工具、支持流式数据加载、提供高性能的数据访问。

多层容错

Cloudberry Database 为了确保数据安全和服务的连续性,采取了数据页面、Checksum、镜像节点配置、控制节点备份的多级容错机制。

丰富的数据分析支持

Cloudberry Database 提供了强大的数据分析功能,使得数据处理、查询和分析变得更加高效,满足各类复杂的数据处理、分析和查询需求。

灵活的工作负载管理

Cloudberry Database 提供了全面的工作负载管理功能,旨在有效地利用和优化数据库资源,以确保高效、稳定的运行。其工作负载管理主要包括连接级别管理、会话级别管理、SQL 级别管理三个层次的控制。

多种兼容性

Cloudberry Database 的兼容性表现在 SQL 语法、组件、工具和程序、硬件平台和操作系统等多个方面,这使得它能够灵活应对各种工具、平台和语言。

架构介绍

在大多数情况下,Cloudberry Database 在 SQL 支持、功能、配置选项和最终用户功能方面与 PostgreSQL 非常相似。数据库用户与 Cloudberry Database 数据库的交互体验,非常接近与单机 PostgreSQL 进行交互。

Cloudberry Database 采用 MPP 架构技术,通过在多个服务器或主机之间分配数据和处理工作负载来存储和处理大量数据。

MPP 也称为大规模并行处理架构,是指具有多台主机的系统,这些主机协作执行同一操作。每台主机都有自己的处理器、内存、磁盘、网络资源和操作系统。Cloudberry Database使用这种高性能的系统架构来分配海量数据的负载,并且可以并行使用系统的所有资源来处理查询。

从用户角度来看,Cloudberry Database 是一个完备的关系数据库管理系统 (RDBMS)。从物理层面来看,它内含多个 PostgreSQL 实例。为了实现多个独立 PostgreSQL 实例的分工和合作,Cloudberry Database 在不同层面对数据存储、计算、通信和管理进行了分布式集群化处理。Cloudberry Database 虽然是一个集群,然而对用户而言,它封装了所有分布式的细节,为用户提供了单个逻辑数据库。这种封装极大地解放了开发人员和运维人员的工作。

Cloudberry Database 架构图如下所示:

  • 控制节点 (Coordinator) 是 Cloudberry Database 数据库系统的入口,它接受客户端连接和 SQL 查询,并将工作分配给数据节点实例。用户与 Cloudberry Database 进行交互,使用客户端程序(例如 psql)或应用程序编程接口(API)(例如 JDBC、ODBC 或 libpq PostgreSQL C API)连接到控制节点。
  • 控制节点是全局系统目录所在的位置,全局系统目录是一组系统表,其中包含有关 Cloudberry Database 数据库系统本身的元数据。
  • 控制节点不包含任何用户数据,数据只保存在数据节点实例上。
  • 控制节点对客户端连接进行身份验证,处理传入的 SQL 命令,在数据节点之间分配工作负载,协调每个数据节点返回的结果,并将最终结果呈现给客户端程序。
  • Cloudberry Database 使用预写日志记录(WAL)进行控制节点/Standby 镜像。在基于 WAL 的日志记录中,所有修改都将在写入磁盘之前先写日志,以确保任何进程内操作的数据完整性。
  • 数据节点 (Segment) 实例是独立的 Postgres 进程,每个数据节点存储一部分数据并执行相应部分查询。当用户通过控制节点连接到数据库并提交查询请求时,会在每个数据节点创建进程来处理查询。用户定义的表及其索引分布在 Cloudberry Database 中的所有可用数据节点中,每个数据节点都包含数据的不同部分,不同部分数据处理的进程在相应的数据节点中运行。用户通过控制节点与数据节点进行交互,数据节点在称为数据节点主机的服务器上运行。 数据节点主机通常执行 2 到 8 个数据节点,具体取决于处理器、内存、存储、网络接口和工作负载。数据节点主机的需要平衡配置,因为 Cloudberry Database获得最佳性能的关键是将数据和工作负载平均分配到数据节点中,以便所有数据节点同时开始处理一项任务并同时完成工作。
  • 内部互联 (Interconnect) 是 Cloudberry Database 系统架构中的网络层。内部互联是指控制节点、数据节点通信所依赖的网络基础架构,使用标准的以太网交换结构。 出于性能原因,建议使用 10 GB 或更快的网络。默认情况下,内部互联模块使用带有流控制(UDPIFC) 的 UDP 协议来实现通信,以通过网络发送消息。Cloudberry Database 执行的数据包验证超出了 UDP 所提供的范围,这意味着可靠性等同于使用 TCP 协议,并且性能和可伸缩性超过了 TCP 协议。如果将内部互联改为使用 TCP 协议,则 Cloudberry Database 的可伸缩性限制为 1000 个数据节点。使用 UDPIFC 作为默认协议时,此限制不适用。
  • Cloudberry Database 使用多版本控制 (Multiversion Concurrency Control/MVCC) 保证数据一致性。这意味着在查询数据库时,每个事务看到的只是数据的快照,其确保当前的事务不会看到其他事务在相同记录上的修改。据此为数据库的每个事务提供事务隔离。 MVCC 以避免给数据库事务显式锁定的方式,最大化减少锁争用以确保多用户环境下的性能。在并发控制方面,使用 MVCC 而不是使用锁机制的最大优势是,MVCC 对查询(读)的锁与写的锁不存在冲突,并且读与写之间从不互相阻塞。

使用场景

场景一:离线批处理数据仓库数据集市建设 (Data Warehousing and Data Marts)

  • 构建高性能的 Cloudberry Database 数据仓库和数据集市,用于存储和查询大规模数据集,包含贴源层、明细层、汇总层等等,支持贴源模型建设、范式化模型建设、维度表和事实表建设等等,支持多种方式将源数据加载至数据仓库。
  • 支持多种类型的数据加工处理。
  • 支持高并发、高性能、低运维的数据仓库和数据集市建设。
  • 支持复杂的数据分析和查询需求,包括数据聚合、多维分析、关联查询等。

场景二:实时数据仓库建设

  • 支持高时效的数据仓库建设,支持流式数据的采集和处理,实现数据实时分析。

场景三:数据中台建设

  • 支持数据中台中 MPP 数据平台的建设,支持分布式并行处理架构。
  • 支持数据中台数据仓库的建设,支持多种主流 ETL 工具的对接。

场景四:湖仓一体建设

  • 支持企业湖仓一体建设,支持数据湖和数据仓库之间数据高效的互访。

场景五:现有 MPP 数据库替换

  • 支持非国产数据库的替换,例如 Oracle、TeraData、Greenplum、Vertical 等。
  • 支持其他类型 MPP 数据库的替换,例如 Gbase 8a、GaussDB 等。

场景六:地理信息系统 (GIS) 应用 (Geographic Information System Applications)

  • 在 Cloudberry Database 上构建地理信息系统 (GIS) 应用。
  • 存储和查询地理位置数据,支持空间数据分析、地理编码和地图可视化等功能。
  • 可以应用于城市规划、地理分析、地图导航等领域。

与 Greenplum 的特性对比

Cloudberry Database 100% 兼容 Greenplum,能提供所有你需要的 Greenplum 特性。

除此之外,Cloudberry Database 还拥有一些 Greenplum 当前不具备或不支持的特性,详见下文。

一般特性对比

说明

  • 在以下表格中,✅ 代表支持,❌ 代表不支持。
  • 以下表格中的对比,基于 Greenplum 7.0 Beta.3 版本。

功能名

Cloudberry Database

Greenplum

在 EXPLAIN 的结果中查看 WAL 的使用信息

Multiranges 类型

B 树自底向上索引清理

GiST的覆盖索引 (INCLUDE)

✅(待发布)

range_agg 范围类型聚合函数

CREATE ACCESS METHOD

✅(待发布)

TOAST 表上的 LZ4 压缩支持

JSONB 通过下标读取元素

配置复制插槽的最大 WAL 保留

验证备份的完整性 (pg_verifybackup)

客户端可以要求 SCRAM 通道绑定

Vacuum "紧急模式"

使用 postgres_fdw 的证书认证

UPSERT

✅(待发布)

COPY FROM Where

VACUUM / ANALYZE 跳过锁定表

HASH 分区表

CTE (SEARCH 和 CYCLE)

存储过程 OUT 参数

外键表的外键约束

pg_terminate_backend 的超时参数

Coordinator 自动故障转移

支持在 Kubernetes 上部署

性能特性对比

功能名

Cloudberry Database

Greenplum

并发重建索引 REINDEX CONCURRENTLY

聚合运算下推

CREATE STATISTICS - OR 和 IN/ANY 统计

增量排序

窗口函数的增量排序

查询流水线

BRIN 索引(多最小最大值,bloom)

查询并行

基于 Abbreviated Keys 进行排序

哈希索引的 WAL 支持

postgres_fdw 聚合下推

添加列时无需重写整个表

表连接运算支持运行时过滤器 (Runtime Filter)

AppendOnly 表支持索引扫描

安全特性对比

功能名

Cloudberry Database

Greenplum

透明数据加密 (TDE)

可信扩展

SCRAM-SHA-256

GSSAPI 时的加密 TCP/IP 连接

行级别安全策略

参考

https://cloudberrydb.org/zh/docs/

https://mp.weixin.qq.com/s/ME-rufZOF5_c9WgL9DqRyw

https://mp.weixin.qq.com/s/ZuVeEsLG1uoeEIREjKAbuQ

https://www.modb.pro/wiki/7408

https://github.com/cloudberrydb/cloudberrydb

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DB宝 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Greenplum 实时数据仓库实践(3)——Greenplum与数据仓库
Greenplum是一个分布式大规模并行处理数据库,在大多数情况下适合做大数据的存储引擎、计算引擎和分析引擎,尤其适合构建数据仓库。本篇重点介绍Greenplum的系统架构和主要功能。我们先从历史演进和所采用的MPP框架对Greenplum做一个概要说明,然后描述其顶层架构,之后详细介绍存储模式、事务支持、并行查询与数据装载、容错与故障转移、数据库统计、过程化语言扩展等方面的功能特性,正是它们支撑Greenplum成为一款理想的分析型数据库产品。本篇最后简单对比Greenplum与另一个流行的大数据处理框架Hadoop,进而阐述可以选择前者的理由。
用户1148526
2021/12/07
4.8K0
Greenplum 实时数据仓库实践(3)——Greenplum与数据仓库
盘点 Greenplum 数据库的十大特点
Greenplum数据库于2015年由Pivotal公司开源,遵循Apache Licence 2.0协议,官方网站为:
IT阅读排行榜
2022/03/11
1.7K0
盘点 Greenplum 数据库的十大特点
Greenplum数据库使用总结(干货满满)--
在以上的架构中可以看出Greenplum主要是由Master和Segment组成的,Master承担生成查询计划并派发汇总执行结果,Segment是执行查询计划及数据储存管理。集群可以直接加载外部的数据。
小徐
2019/08/02
8.4K0
大数据时代,传统数据仓库技术是否已经过时?
传统的数据仓库架构一般有由源系统、ODS、EDW、Data Mart几部分组成。源系统就是业务系统、管理系统、办公系统等等;ODS是操作数据存储;EDW是企业级数据仓库,Data Mart是数据集市。
物流IT圈
2019/07/16
2.8K0
大数据时代,传统数据仓库技术是否已经过时?
产品图鉴:Greenplum
Greenplum是老牌的MPP数据仓库,查询稳定性很强,SQL支持非常全面(支持ANSI SQL 2008和SQL OLAP 2003扩展;支持ODBC和JDBC应用编程接口。完善的标准支持使得系统开发、维护和管理都大为方便。),基于PostgreSQL构建而成,主要面向结构化数据OLAP计算,Greenplum在6.0版本大大的提高了对OLTP的支持,tpcb性能提升60倍,单节点查询达到80000TPS(Transactions Per Second,数据库每秒处理事务数),插入操作达到18000TPS,更新操作约7000TPS。
十里桃花舞丶
2023/10/16
3100
从架构特点到功能缺陷,重新认识分析型分布式数据库 (转载非原创)
转载来源: https://www.cnblogs.com/ivan-uno/p/9051225.html
xlj
2022/05/03
6010
Greenplum MPP 架构
Greenplum(以下简称GPDB)是一款开源数据仓库。基于开源的PostgreSQL改造,主要用来处理大规模数据分析任务,相比Hadoop,Greenplum更适合做大数据的存储、计算和分析引擎。
AiDBA宝典
2023/11/27
1.2K0
Greenplum MPP 架构
在Dell PowerFlex上运行VMware Greenplum提供了一个更好的业务智能和分析平台
当今的企业需要现代化的产品交付,以满足他们不断增长的业务需求并满足其最终用户的需求。要在不同的竞争平台之间构建大数据系统,用户更喜欢功能强大、用户友好和持久采用的平台。许多组织都面临着大数据分析方面的挑战,如何在保持高性能和可用性的同时实现动态增长和灵活性。现实情况是,这些关键组件中的一个往往会为了另一个做出牺牲。在Dell PowerFlex上运行VMware Greenplum为企业提供了包含所有这些组件组合的一个更好的业务智能和分析平台:Greenplum提供专门的大数据分析数据库,VMware提供自我管理和自动化,PowerFlex提供灵活性、弹性和高性能。
用户5498443
2023/02/28
9250
在Dell PowerFlex上运行VMware Greenplum提供了一个更好的业务智能和分析平台
Greenplum 架构详解 & Hash Join 算法介绍
Greenplum数据库是一种大规模并行处理(MPP)数据库服务器,其架构特别针对管理大规模分析型数据仓库以及商业智能工作负载而设计。
一个会写诗的程序员
2022/03/23
1.6K0
Greenplum 架构详解 & Hash Join 算法介绍
大数据时代,传统数据仓库技术是否已经过时?
内容来源:2017 年 10 月 21 日,深奇智慧联合创始人高扬在“PostgreSQL 2017中国技术大会”进行《基于Greenplum,postgreSQL的大型数据仓库实践》演讲分享。IT 大咖说(微信id:itdakashuo)作为独家视频合作方,经主办方和讲者审阅授权发布。
IT大咖说
2018/07/27
1.7K0
大数据时代,传统数据仓库技术是否已经过时?
数仓数据处理DB基本概念解析与理解 OLAP OLTP HATP 异同 MPP架构
学习数仓的时候,可能一开始总是被一些英文缩写名字迷惑,OLAP MPP架构 KAPPA架构 ODS等等,这篇文章就来梳理一下这些基本概念。
大鹅
2021/08/05
3.7K0
HAWQ技术解析(一) —— HAWQ简介
一、SQL on Hadoop 过去五年里,许多企业已慢慢开始接受Hadoop生态系统,将它用作其大数据分析堆栈的核心组件。尽管Hadoop生态系统的MapReduce组件是一个强大的典范,但随着时间的推移,MapReduce自身并不是连接存储在Hadoop生态系统中的数据的最简单途径,企业需要一种更简单的方式来连接要查询、分析、甚至要执行深度数据分析的数据,以便发掘存储在Hadoop中的所有数据的真正价值。SQL在帮助各类用户发掘数据的商业价值领域具有很长历史。 Hadoop上的SQL支持一开始是Apache Hive,一种类似于SQL的查询引擎,它将有限的SQL方言编译到MapReduce中。Hive对MapReduce的完全依赖会导致查询的很大延迟,其主要适用场景是批处理模式。另外,尽管Hive对于SQL的支持是好的开端,但对SQL的有限支持意味着精通SQL的用户忙于企业级使用案例时,将遇到严重的限制。它还暗示着庞大的基于标准SQL的工具生态系统无法利用Hive。值得庆幸的是,在为SQL on Hadoop提供更好的解决方案方面已取得长足进展。 1. 对一流的SQL on Hadoop方案应有什么期待 下表显示了一流的SQL on Hadoop所需要的功能以及企业如何可以将这些功能转变为商业利润。从传统上意义上说,这些功能中的大部分在分析数据仓库都能找到。
用户1148526
2019/05/25
7.5K0
超越传统数据仓库
当前数据仓库的主流架构:分为两个方向一个是 hadoop 体系,一个是 MPP 数据库
用户5383110
2023/02/25
6020
数据中台怎么选型?终于有人讲明白了
数据仓库选型是整个数据中台项目的重中之重,是一切开发和应用的基础。而数据仓库的选型,其实就是Hive数仓和非Hive数仓的较量。Hive数仓以Hive为核心,搭建数据ETL流程,配合Kylin、Presto、HAWQ、Spark、ClickHouse等查询引擎完成数据的最终展现。而非Hive数仓则以Greenplum、Doris、GaussDB、HANA(基于SAP BW构建的数据仓库一般以HANA作为底层数据库)等支持分布式扩展的OLAP数据库为主,支持数据ETL加工和OLAP查询。
Lucifer三思而后行
2022/04/13
2.4K0
数据中台怎么选型?终于有人讲明白了
分布式数据库Greenplum基本原理和使用
OLTP 联机事务处理, on-line transaction processing 强调数据库内存效率 ,强调内存各种指标的命令率 ,强调绑定变量, 强调并发操作 数据在系统中产生 ,对响应时间要求非常高, 用户数量非常庞大,主要是操作人员,数据库的各种操作主要基于索引进行。
价投小邱
2022/11/24
1.6K0
分布式数据库Greenplum基本原理和使用
首款国产开源数据库TBase核心架构演进
腾讯云数据库国产数据库专题线上技术沙龙正在火热进行中,4月14日李跃森的分享已经结束,没来得及参与的小伙伴不用担心,以下就是直播的视频和文字回顾。
腾讯云数据库 TencentDB
2020/05/30
2.9K0
首款国产开源数据库TBase核心架构演进
铺天盖地云原生,什么才是真正的云原生数据仓库?
导语 | 分析型数据仓库经历了共享存储、无共享MPP、SQL-on-Hadoop几代架构的演进,随着云计算的普及,传统的数据仓库架构在资源弹性,成本等方面已经很难适应云原生的要求。本文由偶数科技 CEO,腾讯云TVP 常雷在 Techo TVP开发者峰会「数据的冰与火之歌——从在线数据库技术,到海量数据分析技术」 的《新一代云原生数据仓库的应用》演讲分享整理而成,为大家详细剖析新一代云原生数据仓库的架构、原理和实现技术,以及如何充分应用云原生数据仓库的特点来实现云上大数据应用。 点击可观看精彩演讲视频
腾讯云开发者
2021/05/26
3.1K0
你需要的不是实时数仓 | 你需要的是一款强大的OLAP数据库(下)
在上一章节《你需要的不是实时数仓 | 你需要的是一款强大的OLAP数据库(上)》,我们讲到实时数仓的建设,互联网大数据技术发展到今天,各个领域基本已经成熟,有各式各样的解决方案可以供我们选择。
王知无-import_bigdata
2019/09/16
1.7K0
年度盘点:20+主流数据库重大更新及技术要点回顾
数据库行业年度回顾 技术的多元化探索与产品的差异化发展 2021年,各家数据库产品都取得了长足的进步。 首先,从技术角度上看,分布式、云及云原生、多模、HTAP、AI自治等代表性技术,成为了各大厂商布局发力的重点。 伴随着数据规模激增、场景复杂化,对大规模数据存储、计算提出了更高的要求。分布式数据库迎合这一趋势,近些年来发展迅速,逐步在业务核心场景中被尝试使用。其中不少分布式数据库产品在功能、性能、易用性、稳定性等方面都逐步完善成熟,相信在未来几年,分布式数据库将取得更大发展。 根据第三方机构预测,未来几年
jeanron100
2022/03/03
1.4K0
海量数据处理利器greenplum——初识
简介及适用场景 如果想在数据仓库中快速查询结果,可以使用greenplum。 Greenplum数据库也简称GPDB。它拥有丰富的特性: 第一,完善的标准支持:GPDB完全支持ANSI SQL 2008标准和SQL OLAP 2003 扩展;从应用编程接口上讲,它支持ODBC和JDBC。完善的标准支持使得系统开发、维护和管理都大为方便。而现在的 NoSQL,NewSQL和Hadoop 对 SQL 的支持都不完善,不同的系统需要单独开发和管理,且移植性不好。 第二,支持分布式事务,支持ACID。保证数据的强一
cloudskyme
2018/03/20
2.4K0
海量数据处理利器greenplum——初识
推荐阅读
相关推荐
Greenplum 实时数据仓库实践(3)——Greenplum与数据仓库
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档