盘点 Greenplum 数据库的十大特点
導(dǎo)讀:本文簡單介紹Greenplum具備的特性。
作者:王春波
來源:大數(shù)據(jù)DT(ID:hzdashuju)
01?開放源代碼
Greenplum數(shù)據(jù)庫于2015年由Pivotal公司開源,遵循Apache Licence 2.0協(xié)議,官方網(wǎng)站為:
http://greenplum.org
代碼托管在GitHub上,鏈接為:
https://github.com/greenplum-db/gpdb
開放源碼一方面可以為數(shù)據(jù)庫用戶和開發(fā)人員提供Greenplum數(shù)據(jù)庫源碼級的實現(xiàn)參考,另一方面可以吸引更多的數(shù)據(jù)庫開發(fā)者參與到Greenplum社區(qū)維護中。
02?高擴展性
Greenplum數(shù)據(jù)庫采用大規(guī)模無共享架構(gòu),將多臺服務(wù)器組裝成強大的計算平臺,實現(xiàn)高效的海量并行運算。Greenplum數(shù)據(jù)庫可以支持1000個以上的集群,管理的數(shù)據(jù)規(guī)模從TB級到PB級,可以滿足多數(shù)企業(yè)的數(shù)據(jù)處理需求。
03?高查詢性能
Greenplum的高性能不僅來自高效的并行處理框架,還有查詢引擎的優(yōu)化。Greenplum數(shù)據(jù)庫除了支持基于PostgreSQL的查詢優(yōu)化之外,還專門開發(fā)了一個新的查詢優(yōu)化器ORCA。
ORCA是一款自頂向下的基于Cascades框架的查詢優(yōu)化器,目前已經(jīng)成為企業(yè)版Greenplum數(shù)據(jù)庫的默認優(yōu)化器。相比基于PostgreSQL的查詢優(yōu)化器,ORCA查詢優(yōu)化器能使部分查詢的性能提升10~1000倍。
04 高可用
Greenplum提供多級容錯機制,確保整個系統(tǒng)的高可用性。Master節(jié)點通過Standby Master節(jié)點進行備份,每個數(shù)據(jù)節(jié)點的Primary Segment實例分別配置一個Mirror Segment實例作為備份,同時確保同一組Primary Segment實例和Mirror Segment實例不在同一物理機上,從而降低因為宕機而導(dǎo)致數(shù)據(jù)丟失的風(fēng)險。
05 高效資源管理
Greenplum提供了高效的資源管理機制,根據(jù)用戶的業(yè)務(wù)邏輯將資源合理地分配給查詢?nèi)蝿?wù),避免查詢?nèi)蝿?wù)因查詢資源不足而得不到響應(yīng)。
Greenplum資源管理主要包括對并發(fā)查詢數(shù)量的限制,查詢執(zhí)行時內(nèi)存、CPU資源使用的限制等。Greenplum數(shù)據(jù)庫提供了資源隊列(Resource Queue)和資源組(Resource Group)兩種資源管理方式,一般使用場景下采用默認配置即可。
06 多態(tài)存儲
用戶可以根據(jù)數(shù)據(jù)熱度或者訪問模式的不同使用不同的存儲方式,以獲得更好的查詢性能。用戶可以為一張表按照一定的規(guī)則(比如日期、月份)創(chuàng)建分區(qū)表,一張表的各個子分區(qū)表可以使用不同的物理存儲方式。
支持的存儲方式包括:
行存儲,數(shù)據(jù)以行的形式存儲在數(shù)據(jù)頁里,適合頻繁更新的查詢;
列存儲,數(shù)據(jù)以列的形式存儲在數(shù)據(jù)頁里,適合OLAP分析型查詢;
外部表,數(shù)據(jù)保存在其他文件系中,如HDFS、S3,數(shù)據(jù)庫只保留元數(shù)據(jù)信息。
07 生態(tài)完整
Greenplum數(shù)據(jù)庫擁有完善的SQL標準支持,包括SQL92、SQL99、SQL2003以及OLAP擴展,是對SQL標準支持最好的開源商用數(shù)據(jù)庫系統(tǒng)之一。同時,由于Greenplum數(shù)據(jù)庫基于PostgreSQL,因此也繼承了PostgreSQL對于JDBC、ODBC、C、Python API等接口的支持。
08 高效數(shù)據(jù)加載
Greenplum還有一個非常神奇的功能——GPload并行加載數(shù)據(jù),即允許數(shù)據(jù)從多個文件系統(tǒng)通過多個主機上的多個網(wǎng)卡加載數(shù)據(jù),從而達到非常高的數(shù)據(jù)傳輸率。筆者曾經(jīng)在3個節(jié)點的集群上并行加載50GB、2億行記錄的數(shù)據(jù),僅用時90s。
此外,Greenplum數(shù)據(jù)庫可以讀取和寫入多種類型的外部數(shù)據(jù)源,包括文本文件、XML文件、S3平臺文件、Gemfire、Web服務(wù)器以及Hadoop生態(tài)系統(tǒng)中的HDFS、Hive、HBase、Kafka、Spark等,同時支持數(shù)據(jù)壓縮以及字符集間的自動轉(zhuǎn)換。
09 高級數(shù)據(jù)分析功能
Greenplum數(shù)據(jù)庫支持各種過程化編程語言,包括PL/PostgreSQL、PL/R、PL/Python、PL/Java、PL/Perl等語言擴展。在高級數(shù)據(jù)分析方面,通過Greenplum數(shù)據(jù)庫的MADlib擴展模塊,用戶可以很方便地利用MPP架構(gòu)完成大規(guī)模并行分析。
10 良好的監(jiān)控管理和運維體驗
Greenplum數(shù)據(jù)庫提供基于Web的可視化工具—Greenplum Command Center(簡稱GPCC)。GPCC可以監(jiān)控Greenplum數(shù)據(jù)庫系統(tǒng)的性能、集群健康狀態(tài)、查詢執(zhí)行及系統(tǒng)資源使用情況,如圖2-4所示。
▲圖2-4 Greenplum數(shù)據(jù)庫資源監(jiān)控中心界面
關(guān)于作者:王春波,資深架構(gòu)師和數(shù)據(jù)倉庫專家,現(xiàn)任上海啟高信息科技有限公司大數(shù)據(jù)架構(gòu)師,Apache Doris和openGauss貢獻者,Greenplum中文社區(qū)參與者。具有十多年的數(shù)據(jù)倉庫、數(shù)據(jù)集市、數(shù)據(jù)中臺項目實戰(zhàn)經(jīng)驗,對大數(shù)據(jù)主流技術(shù)架構(gòu)、產(chǎn)品選型與解決方案有深入研究,尤其擅長用優(yōu)雅的SQL實現(xiàn)復(fù)雜的邏輯。?
本文摘編自《高效使用Greenplum:入門、進階與數(shù)據(jù)中臺》,經(jīng)出版方授權(quán)發(fā)布。(ISBN:9787111696490)
《高效使用Greenplum:入門、進階與數(shù)據(jù)中臺》
點擊上圖了解及購買
轉(zhuǎn)載請聯(lián)系微信:DoctorData
推薦語:資深數(shù)據(jù)架構(gòu)師和數(shù)倉專家10余年經(jīng)驗總結(jié),全面、深入講解Greenplum以及如何用它構(gòu)建數(shù)倉和數(shù)據(jù)中臺。
刷刷視頻👇
干貨直達👇
程序員怎樣上元宇宙的車?
什么是貝葉斯定理?樸素貝葉斯有多“樸素”?終于有人講明白了
產(chǎn)品經(jīng)理必讀:用戶場景分析的四要素
2021朋友圈都在傳的10本書,找到了
更多精彩👇
在公眾號對話框輸入以下關(guān)鍵詞
查看更多優(yōu)質(zhì)內(nèi)容!
讀書?|?書單?|?干貨?|?講明白?|?神操作?|?手把手
大數(shù)據(jù)?|?云計算?|?數(shù)據(jù)庫?|?Python?|?爬蟲?|?可視化
AI?|?人工智能?|?機器學(xué)習(xí)?|?深度學(xué)習(xí)?|?NLP
5G?|?中臺?|?用戶畫像?|?數(shù)學(xué)?|?算法?|?數(shù)字孿生
據(jù)統(tǒng)計,99%的大咖都關(guān)注了這個公眾號
👇
總結(jié)
以上是生活随笔為你收集整理的盘点 Greenplum 数据库的十大特点的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 神操作:教你用Python识别恶意软件
- 下一篇: 什么是Apache Spark?这篇文章