高效使用Greenplum:入門 進(jìn)階與數(shù)據(jù)中臺
定 價(jià):109 元
這不僅是一本從原理到使用、從入門到進(jìn)階講解Greenplum的著作,而且是一本指導(dǎo)企業(yè)用更省錢、更高效地方式使用Greenplum構(gòu)建企業(yè)級數(shù)據(jù)倉庫和數(shù)據(jù)中臺的著作。
作者在數(shù)據(jù)架構(gòu)和數(shù)據(jù)倉庫一線工作10余年,積累了豐富的項(xiàng)目經(jīng)驗(yàn),他用淺顯易懂的語言、貼近生產(chǎn)環(huán)境的案例、豐富的示意圖例寫作了本書,能幫助讀者快速掌握具有實(shí)戰(zhàn)價(jià)值的知識。具體地,閱讀本書你將收獲如下內(nèi)容:· 掌握數(shù)據(jù)倉庫技術(shù)的發(fā)展歷程和發(fā)展方向;· 理解MPP架構(gòu)的架構(gòu)特點(diǎn)和實(shí)現(xiàn)邏輯;· Greenplum數(shù)據(jù)庫的安裝和基本操作;· Greenplum數(shù)據(jù)庫的工作原理;· SQL語句從入門到開發(fā)實(shí)戰(zhàn);· Greenplum數(shù)據(jù)庫ETL相關(guān)功能的具體用途;· 機(jī)器學(xué)習(xí)、文本處理、圖計(jì)算、GIS等的入門知識;· 掌握Greenplum數(shù)據(jù)庫的運(yùn)維和監(jiān)控要點(diǎn);· 全面掌握Greenplum數(shù)據(jù)庫的性能優(yōu)化;· 數(shù)據(jù)中臺的理念和建設(shè)路徑;· 數(shù)據(jù)中臺從接口到智能化應(yīng)用的項(xiàng)目實(shí)戰(zhàn);· 零售行業(yè)數(shù)據(jù)中臺的項(xiàng)目實(shí)戰(zhàn)案例。
(1)作者背景資深:在數(shù)倉、數(shù)據(jù)中臺等領(lǐng)域深耕10余年,啟高信息大數(shù)據(jù)架構(gòu)師,Apache Doris和OpenGauss源碼貢獻(xiàn)者。
(2)作者經(jīng)驗(yàn)豐富:豐富的數(shù)據(jù)倉庫、數(shù)據(jù)集市、數(shù)據(jù)中臺項(xiàng)目實(shí)戰(zhàn)經(jīng)驗(yàn),對大數(shù)據(jù)主流技術(shù)架構(gòu)、產(chǎn)品選型與解決方案有深入研究,尤其擅長用優(yōu)雅的SQL實(shí)現(xiàn)復(fù)雜的邏輯。
(3)講透Greenplum:從工作原理、功能組件、深入應(yīng)用3個(gè)維度全面、深入講解Greenplum,幫助讀者快速實(shí)現(xiàn)Greenplum的入門、實(shí)戰(zhàn)與進(jìn)階。
(4)Greenplum數(shù)據(jù)中臺搭建:從建設(shè)思路、接口實(shí)戰(zhàn)、建模實(shí)戰(zhàn)到數(shù)據(jù)中臺管理和應(yīng)用,全方位解讀基于 Greenplum 數(shù)據(jù)庫實(shí)現(xiàn)數(shù)據(jù)中臺的過程
(5)Greenplum中文社區(qū)推薦:Greenplum中文社區(qū)創(chuàng)始人姚延棟、啟高信息創(chuàng)始人趙書賢等7位專家聯(lián)袂推薦
(6)豐富案例和圖示:通過淺顯易懂的語言,用豐富的案例和圖示,將復(fù)雜的內(nèi)容簡單化,引導(dǎo)讀者深入學(xué)習(xí),事半功倍。
為什么要寫這本書2012年我步入企業(yè)數(shù)據(jù)分析領(lǐng)域,一度聚焦于銀行業(yè)管理會計(jì)系統(tǒng)。管理會計(jì)系統(tǒng)是銀行業(yè)重要的數(shù)據(jù)分析與應(yīng)用系統(tǒng)。在上線管理會計(jì)系統(tǒng)之前,銀行業(yè)只能通過簡單的統(tǒng)計(jì)報(bào)表應(yīng)對各種業(yè)務(wù)統(tǒng)計(jì)需求。管理會計(jì)系統(tǒng)幫助銀行實(shí)現(xiàn)了經(jīng)營數(shù)據(jù)的匯總整合、數(shù)據(jù)質(zhì)量的提升、精細(xì)化管理的轉(zhuǎn)變,一躍成為銀行業(yè)核心的數(shù)據(jù)應(yīng)用系統(tǒng)。銀行業(yè)的管理會計(jì)系統(tǒng)通常構(gòu)建在數(shù)據(jù)倉庫之上,是一個(gè)面向應(yīng)用的數(shù)據(jù)集市,雖然整體架構(gòu)和數(shù)據(jù)倉庫類似,但是系統(tǒng)的數(shù)據(jù)容量略小。早期的管理會計(jì)系統(tǒng)都是基于Oracle、DB2、SQL Server實(shí)現(xiàn)的。2017年年底,我次接觸到了大數(shù)據(jù)平臺,參與了銀行業(yè)個(gè)基于Hadoop平臺的管理會計(jì)系統(tǒng)項(xiàng)目建設(shè)。身為傳統(tǒng)數(shù)據(jù)庫開發(fā)工程師,我在Oracle和DB2數(shù)據(jù)庫上積累的經(jīng)驗(yàn)在Hive上完全無用武之地。在完成Hive數(shù)據(jù)分析項(xiàng)目的同時(shí),我一邊惡補(bǔ)Hadoop的相關(guān)知識,一邊深入理解Hive執(zhí)行過程和執(zhí)行原理,終于在項(xiàng)目后期掌握了Hive數(shù)據(jù)倉庫的優(yōu)化策略和調(diào)優(yōu)參數(shù)。盡管已經(jīng)有了Hive的優(yōu)化經(jīng)驗(yàn),我仍然很難認(rèn)可Hive的數(shù)據(jù)倉庫領(lǐng)導(dǎo)者地位。即使后面用到了Tez、Hive on Spark等更加快速的查詢引擎,腳本式的開發(fā)過程和大表關(guān)聯(lián)的性能瓶頸,仍然讓我對Hive很不滿意。直到有一天,我發(fā)現(xiàn)了Greenplum數(shù)據(jù)庫,才知道分布式數(shù)據(jù)庫其實(shí)還有更好的選擇。MPP架構(gòu)作為傳統(tǒng)數(shù)據(jù)庫架構(gòu)設(shè)計(jì)的正統(tǒng)繼承者,既滿足了大數(shù)據(jù)量查詢的性能要求,又解決了SQL語言的兼容性問題。正是基于Greenplum數(shù)據(jù)庫帶給我的驚喜,我才特別想將使用經(jīng)驗(yàn)分享給大家,從而推動更多企業(yè)使用Greenplum數(shù)據(jù)庫,讓它們用更省錢、更快捷的方式實(shí)現(xiàn)企業(yè)級數(shù)據(jù)倉庫和數(shù)據(jù)中臺。雖然現(xiàn)在ClickHouse和Doris正在崛起,新一代的架構(gòu)可能會超越Greenplum數(shù)據(jù)庫,但是Greenplum數(shù)據(jù)庫勝在生態(tài)成熟、技術(shù)穩(wěn)定,完全可以滿足大部分中小企業(yè)的數(shù)據(jù)分析需求。Greenplum曾經(jīng)在阿里巴巴作為Oracle集群的替代產(chǎn)品,成為數(shù)據(jù)倉庫的核心數(shù)據(jù)庫(雖然后來被自研產(chǎn)品換掉,但是阿里巴巴當(dāng)時(shí)的數(shù)據(jù)體量是很多公司未來10年都不可能達(dá)到的),而且這些年來,Greenplum數(shù)據(jù)庫技術(shù)更加成熟,生態(tài)更為完善,性能也得到了大幅提高。阿里云推出的云原生數(shù)據(jù)倉庫AnalyticDB for PostgreSQL正是基于Greenplum的改進(jìn)版本。百度云、云也陸續(xù)推出了基于Greenplum的云上數(shù)據(jù)倉庫平臺,騰訊云和華為云則主推自家研發(fā)的同類產(chǎn)品(騰訊TBase和華為GaussDB)。這說明各大云廠商都看好MPP架構(gòu)數(shù)據(jù)庫在OLAP領(lǐng)域的應(yīng)用趨勢。這些數(shù)據(jù)倉庫平臺都是基于PostgreSQL研發(fā)的,并且都參考了Greenplum的架構(gòu)體系。因此,深入研究Greenplum可以達(dá)到觸類旁通的作用。從主推以Hive為核心的大數(shù)據(jù)平臺到回歸Greenplum生態(tài),說明云廠商的產(chǎn)品定位在發(fā)生轉(zhuǎn)變。對于廣大中小型企業(yè),Greenplum才是適合它們的數(shù)據(jù)庫產(chǎn)品。讀者對象本書適合以下讀者。商業(yè)智能分析領(lǐng)域的工程師。Greenplum作為一款簡單易用、性能卓越的OLAP分析數(shù)據(jù)庫,非常適合作為數(shù)據(jù)分析的底層數(shù)據(jù)庫。通過閱讀本書,讀者可以快速掌握Greenplum的使用,并可以從其他環(huán)境抽取數(shù)據(jù)到Greenplum進(jìn)行數(shù)據(jù)分析,進(jìn)一步提升工作效率。數(shù)據(jù)分析領(lǐng)域的ETL工程師。MPP數(shù)據(jù)庫的原理是數(shù)據(jù)分析領(lǐng)域的ETL工程師必須掌握的技術(shù)知識點(diǎn)。通過本書,讀者不僅可以學(xué)習(xí)并掌握MPP架構(gòu)的開源數(shù)據(jù)庫,以及PostgreSQL和Greenplum數(shù)據(jù)庫語法,還可以基于Greenplum構(gòu)建完整的數(shù)據(jù)倉庫、數(shù)據(jù)中臺系統(tǒng)。系統(tǒng)架構(gòu)師。OLAP數(shù)據(jù)庫選型一直是系統(tǒng)架構(gòu)領(lǐng)域的難點(diǎn),通過本書,讀者可以全面認(rèn)識Greenplum數(shù)據(jù)庫的優(yōu)點(diǎn)和缺點(diǎn),從而務(wù)實(shí)地在Hadoop和Greenplum中做出明智的選擇。此外,Greenplum會大幅降低開發(fā)成本,提高開發(fā)效率,提升企業(yè)的信息服務(wù)水平。計(jì)算機(jī)專業(yè)的高校學(xué)生。如今,很多高校都開設(shè)了數(shù)據(jù)庫和大數(shù)據(jù)相關(guān)的課程,然而Hadoop的復(fù)雜性和不穩(wěn)定性讓入門者膽怯,基于PostgreSQL的MPP數(shù)據(jù)庫Greenplum會是這部分讀者好的選擇。本書特色本書結(jié)合數(shù)據(jù)中臺的建設(shè),從建設(shè)思路、接口實(shí)戰(zhàn)、建模實(shí)戰(zhàn)到數(shù)據(jù)中臺管理和應(yīng)用,全方位解讀基于Greenplum數(shù)據(jù)庫實(shí)現(xiàn)數(shù)據(jù)中臺的過程,并輔之以零售行業(yè)數(shù)據(jù)中臺的案例,深入剖析數(shù)據(jù)中臺建設(shè)的全過程,幫助讀者掌握數(shù)據(jù)中臺的實(shí)戰(zhàn)要領(lǐng)。在行文方面,本書盡可能使用淺顯易懂的語言,并通過大量的演示案例來引導(dǎo)讀者深入學(xué)習(xí)。在關(guān)鍵環(huán)節(jié),本著有圖有真相的原則,配有大量的截圖和示意圖幫助讀者加深對知識的理解。如何閱讀本書本書內(nèi)容分為4部分。部分 大數(shù)據(jù)平臺概述(第1章):主要從應(yīng)用的角度介紹了大數(shù)據(jù)技術(shù)的發(fā)展歷程,幫助讀者了解時(shí)代背景,把握大數(shù)據(jù)技術(shù)的發(fā)展方向。第二部分 Greenplum入門(第2~4章):簡單介紹Greenplum數(shù)據(jù)庫的基本原理、安裝與部署、入門操作,幫助讀者認(rèn)識Greenplum數(shù)據(jù)庫。沒有任何數(shù)據(jù)庫應(yīng)用經(jīng)驗(yàn)的讀者可以認(rèn)真學(xué)習(xí)這部分內(nèi)容。第三部分 Greenplum應(yīng)用(第5~11章):著重講解了Greenplum數(shù)據(jù)庫的部分高級應(yīng)用功能,包括SQL語法、ETL
王春波
資深架構(gòu)師和數(shù)據(jù)倉庫專家,現(xiàn)任上海啟高信息科技有限公司大數(shù)據(jù)架構(gòu)師,Apache Doris和openGauss貢獻(xiàn)者,Greenplum中文社區(qū)參與者。
具有十多年的數(shù)據(jù)倉庫、數(shù)據(jù)集市、數(shù)據(jù)中臺項(xiàng)目實(shí)戰(zhàn)經(jīng)驗(yàn),對大數(shù)據(jù)主流技術(shù)架構(gòu)、產(chǎn)品選型與解決方案有深入研究,尤其擅長用優(yōu)雅的SQL實(shí)現(xiàn)復(fù)雜的邏輯。
常年奔波在各個(gè)項(xiàng)目交付現(xiàn)場,曾成功主導(dǎo)過中國郵政儲蓄銀行、南海農(nóng)商銀行、廣東省聯(lián)社、前海微眾銀行、廣東南粵銀行等多家銀行的管理會計(jì)項(xiàng)目,以及卡賓、安踏、特步等多家零售鞋服企業(yè)的數(shù)據(jù)中臺項(xiàng)目。公眾號數(shù)據(jù)中臺研習(xí)社運(yùn)營者。
序一序二序三前言部分 大數(shù)據(jù)平臺概述第1章 大數(shù)據(jù)平臺技術(shù)的演進(jìn)21.1 關(guān)系型數(shù)據(jù)庫21.1.1 數(shù)據(jù)庫發(fā)展歷程21.1.2 關(guān)系型數(shù)據(jù)庫獨(dú)霸天下41.1.3 結(jié)構(gòu)化查詢語言SQL41.1.4 列存儲的興起51.2 Hadoop生態(tài)系統(tǒng)71.2.1 Hadoop概述71.2.2 Hadoop生態(tài)圈71.2.3 Hadoop的優(yōu)缺點(diǎn)91.3 NoSQL的瓶頸和SQL數(shù)據(jù)庫的回歸101.3.1 NoSQL產(chǎn)品的發(fā)展101.3.2 NoSQL的共性111.3.3 SQL數(shù)據(jù)庫的回歸121.4 MPP架構(gòu)的興起141.4.1 什么是MPP架構(gòu)141.4.2 MPP架構(gòu)的蓬勃發(fā)展151.4.3 MPP數(shù)據(jù)庫代表TBase171.4.4 淺談HTAP19第二部分 Greenplum入門第2章 Greenplum概述242.1 Greenplum的前世今生242.2 Greenplum數(shù)據(jù)庫架構(gòu)272.3 Greenplum數(shù)據(jù)庫的特點(diǎn)282.4 Greenplum新特性及展望302.5 Greenplum的優(yōu)勢32第3章 Greenplum的安裝與部署353.1 Greenplum數(shù)據(jù)庫安裝過程353.1.1 準(zhǔn)備工作353.1.2 安裝Master節(jié)點(diǎn)393.1.3 復(fù)制安裝包到其他節(jié)點(diǎn)413.1.4 初始化Greenplum數(shù)據(jù)庫423.2 安裝GPCC433.3 Greenplum訪問接口463.3.1 CLI463.3.2 JDBC473.3.3 ODBC483.4 Greenplum數(shù)據(jù)庫常用命令483.4.1 啟動和停止483.4.2 修改參數(shù)493.4.3 其他常用命令513.5 Greenplum性能測試52第4章 Greenplum使用入門544.1 數(shù)據(jù)類型詳解544.1.1 基本數(shù)據(jù)類型544.1.2 特殊數(shù)據(jù)類型564.1.3 組合數(shù)據(jù)類型604.2 數(shù)據(jù)表的基本使用624.2.1 表對象定義624.2.2 表的基本操作634.2.3 數(shù)據(jù)的基本操作644.3 數(shù)據(jù)表的高級應(yīng)用654.3.1 數(shù)據(jù)表的存儲特性694.3.2 分區(qū)表詳解724.3.3 外部表764.4 數(shù)據(jù)庫函數(shù)794.4.1 數(shù)學(xué)函數(shù)794.4.2 三角函數(shù)列表804.4.3 字符串函數(shù)和操作符804.4.4 類型轉(zhuǎn)換相關(guān)函數(shù)824.4.5 自定義函數(shù)834.5 數(shù)據(jù)庫的其他對象854.5.1 視圖854.5.2 索引854.5.3 序列87第三部分 Greenplum應(yīng)用第5章 Greenplum查詢詳解905.1 SQL語法925.1.1 簡單SQL語法925.1.2 WITH子句特性955.1.3 IN語句和EXISTS語句985.1.4 MERGE子句的實(shí)現(xiàn)1005.2 JOIN操作1015.3 分析函數(shù)的妙用1065.4 高級函數(shù)精選110第6章 ETL工具箱1146.1 數(shù)據(jù)加載王者GPLoad1146.1.1 GPLoad簡介1146.1.2 GPLoad配置詳解1166.1.3 GPLoad實(shí)戰(zhàn)1186.2 自定義存儲過程1206.2.1 存儲過程介紹 1206.2.2 存儲過程應(yīng)用模板1216.2.3 存儲過程精選案例1226.3 PXF插件1316.3.1 PXF簡介1316.3.2 安裝PXF1326.3.3 PXF實(shí)戰(zhàn)1356.4 DBLink1366.4.1 DBLink簡介1366.4.2 安裝DBLink1376.4.3 DBlink實(shí)戰(zhàn)1396.5 拉鏈表142第7章 Greenplum高級應(yīng)用1477.1 開放的編程接口1477.1.1 PL/Python1487.1.2 PL/R1507.2 MADlib機(jī)器學(xué)習(xí)庫1537.2.1 安裝MADlib1547.2.2 線性回歸案例1577.2.3 關(guān)聯(lián)規(guī)則案例1587.2.4 樸素貝葉斯分類案例1597.3 半結(jié)構(gòu)化數(shù)據(jù)分析1647.4 地理空間數(shù)據(jù)分析1667.5 圖計(jì)算應(yīng)用168第8章 Greenplum運(yùn)維管理和監(jiān)控1728.1 數(shù)據(jù)庫管理1728.1.1 創(chuàng)建和管理數(shù)據(jù)庫1728.1.2 創(chuàng)建和管理模式1738.1.3 創(chuàng)建和管理表空間1758.1.4 創(chuàng)建和管理用戶1788.1.5 創(chuàng)建和管理資源隊(duì)列1808.2 可視化監(jiān)控頁面GPCC1838.3 管理好幫手gp_toolkit1858.4 Greenplum備份和恢復(fù)1878.5 在線擴(kuò)容工具GPExpand1898.5.1 Greenplum擴(kuò)容實(shí)戰(zhàn)1898.5.2 擴(kuò)容原理分析1918.6 鎖機(jī)制1928.6.1 鎖管理概述1928.6.2 普通鎖數(shù)據(jù)結(jié)構(gòu)192第9章 Greenplum性能優(yōu)化1979.1 系統(tǒng)級優(yōu)化1979.1.1 操作系統(tǒng)選擇1979.1.2 硬件資源配置1989.1.3 磁盤讀寫1999.1.4 節(jié)點(diǎn)之間的網(wǎng)絡(luò)帶寬2029.1.5 系統(tǒng)參數(shù)2029.2 數(shù)據(jù)庫級優(yōu)化2049.2.1 數(shù)據(jù)庫參數(shù)配置2049.2.2 資源隊(duì)列2069.3 表級優(yōu)化2069.3.1 建表參數(shù)2079.3.2 表的優(yōu)化2089.4 執(zhí)行計(jì)劃和查詢優(yōu)化2099.4.1 查看執(zhí)行計(jì)劃2109.4.2 數(shù)據(jù)掃描方式2109.4.3 分布式執(zhí)行方式2139.4.4 兩種聚合方式2149.4.5 關(guān)聯(lián)分類2149.4.6 優(yōu)化器的選擇2169.4.7 其他關(guān)鍵術(shù)語217第10章 Greenplum與開源組件22010.1 Kettle22010.2 DataX22410.3 HDFS、Hive和HBase22810.4 Spark23010.5 Kafka23510.6 Flink238第11章 Greenplum與BI應(yīng)用24411.1 Tableau244