訪問網(wǎng)站提示輸入用戶名密碼網(wǎng)絡(luò)推廣營銷培訓(xùn)機構(gòu)
CloudberryDB 制定了演化路線圖(https://github.com/orgs/cloudberrydb/discussions/369)并在逐步改進,這是 Cloudberry Database 發(fā)揮獨特價值之處。
計劃、正在進行或已完成的一些工作。
支持輕松升級 PostgreSQL 內(nèi)核版本。
原有 Greenplum Database 功能實現(xiàn)對 PostgreSQL 內(nèi)核具有很強的侵入性,導(dǎo)致升級 PostgreSQL 版本非常困難。我們采取當(dāng)前 PostgreSQL 生態(tài)流行的方式,以“擴展插件/Library”模式重構(gòu)部分功能實現(xiàn),降低與 PostgreSQL 內(nèi)核的強耦合度,可以輕松實現(xiàn) PostgreSQL 內(nèi)核版本升級。如果你想在 Cloudberry Database 中增加什么功能,都可以像拼積木一樣靈活擴展,這一策略貫穿到整個 Cloudberry Database 設(shè)計與開發(fā)之中。(已開源)
支持統(tǒng)一管理非結(jié)構(gòu)化數(shù)據(jù)。
面對 AI 應(yīng)用帶來的非結(jié)構(gòu)化數(shù)據(jù)管理挑戰(zhàn),我們在 Cloudberry Database 中引入了“Directory Table”概念特性,用于存儲、管理和分析非結(jié)構(gòu)化數(shù)據(jù)對象,實現(xiàn)集中管理和統(tǒng)一處理文檔、音視頻等非結(jié)構(gòu)化數(shù)據(jù)。在此基礎(chǔ)上,用戶只需要使用簡單的 SQL 語句就可以調(diào)用各種計算引擎,實現(xiàn)高效的數(shù)據(jù)加工和應(yīng)用開發(fā),降低非結(jié)構(gòu)化語料數(shù)據(jù)的處理成本。(已開源)
多場景綜合優(yōu)化性能。
性能優(yōu)化是個系統(tǒng)工程,涉及到多個方面,不同場景處理方式也不一樣。我們重點推動了,如:
-
??實現(xiàn)向量化,提升查詢性能。當(dāng)需要處理大規(guī)模數(shù)據(jù)集時,向量化執(zhí)行引擎可以顯著提高計算效率。通過將數(shù)據(jù)向量化,可以同時處理多個數(shù)據(jù)元素,利用并行計算和 SIMD 指令集加速計算過程。我們內(nèi)部已經(jīng)實現(xiàn)基于 Cloudberry Database 內(nèi)核的向量化插件,會明顯提升優(yōu)化查詢語句的性能。(準(zhǔn)備開源)
-
??下推聚集運算。聚集下推是使聚集操作的運算更接近數(shù)據(jù)源的一種優(yōu)化技術(shù)。目前 Cloudberry Database 已支持將聚集運算下推,即將聚集算子提前到連接算子之前進行計算。在合適的場景下,聚集下推能夠明顯地減少連接算子或者聚集算子的輸入集大小,進而提升算子的執(zhí)行性能。(已開源)
-
??實現(xiàn)增量物化視圖、自動物化視圖支持查詢優(yōu)化。(已開源)
-
??增量物化視圖是物化視圖的一種特殊形式,當(dāng)數(shù)據(jù)在基礎(chǔ)表中發(fā)生變化時(例如插入、更新、刪除操作),增量物化視圖不需要重新計算整個視圖中的所有數(shù)據(jù)。相反,它只更新那些自上次刷新以來發(fā)生變化的部分,這樣可以節(jié)省大量的計算資源和時間,顯著提高性能,尤其是在處理大型數(shù)據(jù)集時。
-
??支持在查詢規(guī)劃階段自動使用物化視圖來計算部分或全部查詢(即 AQUMV),這一功能特別適用于在大表上進行的查詢,能顯著提高查詢處理時間。
-
-
??使用 RuntimeFilter 優(yōu)化 HashJoin 查詢性能。RuntimeFilter 是在執(zhí)行 HashJoin 運算時,實時產(chǎn)生過濾器 (Filter) 的優(yōu)化技術(shù),可以在執(zhí)行 HashJoin 前預(yù)先對數(shù)據(jù)進行篩選,更快地執(zhí)行 HashJoin。在某些場景下,通過 RuntimeFilter 優(yōu)化能夠使執(zhí)行效率翻倍。HashJoin 常用于小表和大表的連接。Cloudberry Database 在執(zhí)行 HashJoin 運算時,通常基于待連接的兩表中較小的表來構(gòu)建哈希表,然后循環(huán)地根據(jù)較大表中的元組,在哈希表中查找連接鍵匹配的元組來實現(xiàn)連接。(已開源)
同時,我們還實現(xiàn)了動態(tài)分區(qū)消除、針對不同運算符在查詢不同階段予以釋放或重新分配內(nèi)存、并發(fā)創(chuàng)建索引、并發(fā)執(zhí)行查詢、AO/AOCO 索引掃描(IndexScan)支持,以及提供基于規(guī)則的查詢優(yōu)化手段和基于代價的查詢優(yōu)化手段幫助用戶生成更高效的查詢執(zhí)行計劃等等。(已開源)
實現(xiàn)行列混合存儲。
我們基于 Cloudberry Database 實現(xiàn)了行列混合存儲方案,該方案結(jié)合了行式存儲和列式存儲的優(yōu)點,旨在提高數(shù)據(jù)庫的查詢性能,尤其是緩存效率。該方案適合處理大量寫入和頻繁查詢的復(fù)雜 OLAP 應(yīng)用,既適應(yīng)云環(huán)境下基于對象存儲的存儲模型,也能適應(yīng)線下傳統(tǒng)基于物理文件的存儲方式。(準(zhǔn)備開源)
支持全文檢索引擎。
我們使用 ZomboDB 支持 Cloudberry Database 和 Elasticsearch 協(xié)同工作,讓 Cloudberry Database 擁有 Elasticsearch 豐富的全文檢索和文本分析能力。ZomboDB 支持大多數(shù) Cloudberry Database 的 SQL 語法,可以管理 Elasticsearch 集群上的索引,并且保證事務(wù)層面上文本檢索的正確性。(準(zhǔn)備開源)
實現(xiàn)安全增強。
除 PostgreSQL 原有安全插件外,Cloudberry Database 提供了豐富的權(quán)限設(shè)置選項,滿足不同用戶和不同級別的對象需求,支持配置密碼安全策略,可將策略應(yīng)用于一個或多個用戶,支持密碼強度檢查;支持?jǐn)?shù)據(jù)脫敏或漂白,去除數(shù)據(jù)中的敏感信息;支持透明數(shù)據(jù)加密 TDE 功能,提升靜態(tài)數(shù)據(jù)的安全性;除支持常用的 AES 加密算法外,支持國密算法、密文認(rèn)證等等。(已開源)
支持集群彈性擴縮容。
Greenplum Database 已實現(xiàn)一定的集群擴容功能,Cloudberry Database 在此基礎(chǔ)上將其持續(xù)增強,并實現(xiàn)了在集群資源空閑時的集群縮容功能。(已開源)
友好的圖形化管理工具。
我們正在實現(xiàn) Cloudberry Database 的圖形化管理工具,可支持用戶在圖形界面中部署 Cloudberry Database 集群,可以提供各個粒度包括集群級、表級、Query 級的監(jiān)控信息,支持 SQL Editor 等。(準(zhǔn)備開源)
? 將推動流處理、湖倉一體等方案開源,通過連接器(Connector)或 Foreign Data Wrapper(FDW)形式,從 Kafka 中加載實時數(shù)據(jù),或?qū)?Hive 集群數(shù)據(jù)(含 Iceberg 和 Hudi 表格式)加載到 Cloudberry Database,打通數(shù)據(jù)倉庫和數(shù)據(jù)湖;推動適配國產(chǎn)操作系統(tǒng)和服務(wù)器等等。
?
一般特性對比
說明
-
在以下表格中,? 代表支持,? 代表不支持。
-
以下表格中的對比,基于 Greenplum 7.0 Beta.3 版本。
功能名 | Cloudberry Database | Greenplum |
---|---|---|
在?EXPLAIN ?的結(jié)果中查看 WAL 的使用信息 | ? | ? |
Multiranges 類型 | ? | ? |
B 樹自底向上索引清理 | ? | ? |
GiST的覆蓋索引 (INCLUDE ) | ? | ?(待發(fā)布) |
range_agg ?范圍類型聚合函數(shù) | ? | ? |
CREATE ACCESS METHOD | ? | ?(待發(fā)布) |
TOAST ?表上的 LZ4 壓縮支持 | ? | ? |
JSONB 通過下標(biāo)讀取元素 | ? | ? |
配置復(fù)制插槽的最大 WAL 保留 | ? | ? |
驗證備份的完整性 (pg_verifybackup ) | ? | ? |
客戶端可以要求 SCRAM 通道綁定 | ? | ? |
Vacuum "緊急模式" | ? | ? |
使用?postgres_fdw ?的證書認(rèn)證 | ? | ? |
UPSERT | ? | ?(待發(fā)布) |
COPY FROM Where | ? | ? |
VACUUM / ANALYZE 跳過鎖定表 | ? | ? |
HASH 分區(qū)表 | ? | ? |
CTE (SEARCH ?和?CYCLE ) | ? | ? |
存儲過程 OUT 參數(shù) | ? | ? |
外鍵表的外鍵約束 | ? | ? |
pg_terminate_backend ?的超時參數(shù) | ? | ? |
Coordinator 自動故障轉(zhuǎn)移 | ? | ? |
支持在 Kubernetes 上部署 | ? | ? |
性能特性對比
功能名 | Cloudberry Database | Greenplum |
---|---|---|
并發(fā)重建索引?REINDEX CONCURRENTLY | ? | ? |
聚合運算下推 | ? | ? |
CREATE STATISTICS ?-?OR ?和?IN/ANY ?統(tǒng)計 | ? | ? |
增量排序 | ? | ? |
窗口函數(shù)的增量排序 | ? | ? |
查詢流水線 | ? | ? |
BRIN 索引(多最小最大值,bloom) | ? | ? |
查詢并行 | ? | ? |
基于 Abbreviated Keys 進行排序 | ? | ? |
哈希索引的 WAL 支持 | ? | ? |
postgres_fdw ?聚合下推 | ? | ? |
添加列時無需重寫整個表 | ? | ? |
表連接運算支持運行時過濾器 (Runtime Filter) | ? | ? |
AppendOnly 表支持索引掃描 | ? | ? |
安全特性對比
功能名 | Cloudberry Database | Greenplum |
---|---|---|
透明數(shù)據(jù)加密 (TDE) | ? | ? |
可信擴展 | ? | ? |
SCRAM-SHA-256 | ? | ? |
GSSAPI 時的加密 TCP/IP 連接 | ? | ? |
行級別安全策略 | ? | ? |