偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

數(shù)據(jù)中臺怎么選型?終于有人講明白了

開發(fā) 架構(gòu) 中臺
數(shù)據(jù)倉庫選型是整個數(shù)據(jù)中臺項目的重中之重,是一切開發(fā)和應(yīng)用的基礎(chǔ)。而數(shù)據(jù)倉庫的選型,其實就是Hive數(shù)倉和非Hive數(shù)倉的較量。Hive數(shù)倉以Hive為核心,搭建數(shù)據(jù)ETL流程,配合Kylin、Presto、HAWQ、Spark、ClickHouse等查詢引擎完成數(shù)據(jù)的最終展現(xiàn)。

 

01數(shù)據(jù)倉庫選型

數(shù)據(jù)倉庫選型是整個數(shù)據(jù)中臺項目的重中之重,是一切開發(fā)和應(yīng)用的基礎(chǔ)。而數(shù)據(jù)倉庫的選型,其實就是Hive數(shù)倉和非Hive數(shù)倉的較量。Hive數(shù)倉以Hive為核心,搭建數(shù)據(jù)ETL流程,配合Kylin、Presto、HAWQ、Spark、ClickHouse等查詢引擎完成數(shù)據(jù)的最終展現(xiàn)。而非Hive數(shù)倉則以Greenplum、Doris、GaussDB、HANA(基于SAP BW構(gòu)建的數(shù)據(jù)倉庫一般以HANA作為底層數(shù)據(jù)庫)等支持分布式擴展的OLAP數(shù)據(jù)庫為主,支持數(shù)據(jù)ETL加工和OLAP查詢。

自從Facebook開源Hive以來,Hive逐漸占領(lǐng)了市場。Hive背靠Hadoop體系,基于HDFS的數(shù)據(jù)存儲,安全穩(wěn)定、讀取高效,同時借助Yarn資源管理器和Spark計算引擎,可以很方便地擴展集群規(guī)模,實現(xiàn)穩(wěn)定地批處理。Hive數(shù)據(jù)倉庫的優(yōu)勢在于可擴展性強,有大規(guī)模集群的應(yīng)用案例,受到廣大架構(gòu)師的推崇。

雖然Hive應(yīng)用廣泛,但是其缺點也是不容忽視的。

Hive的開源生態(tài)已經(jīng)完全分化,各大互聯(lián)網(wǎng)公司和云廠商都是基于早期的開源版本進行個性化修改以后投入生產(chǎn)使用的,很難再回到開源體系。Hive現(xiàn)在的3個版本方向1.2.x、2.1.x、3.1.x都有非常廣泛的應(yīng)用,無法形成合力。

開源社區(qū)發(fā)布的Hive版本過于粗糙,漏洞太多。最典型的就是Hive 3.1.0版本里面的Timestamp類型自動存儲為格林尼治時間的問題,無論怎么調(diào)整參數(shù)和系統(tǒng)變量都不能解決。據(jù)HDP官方說明,需要升級到3.1.2版才能解決。根據(jù)筆者實際應(yīng)用的情況,Hive 3.1.2版在大表關(guān)聯(lián)時又偶爾出現(xiàn)inert overwrite數(shù)據(jù)丟失的情況。

Hive最影響查詢性能的計算引擎也不能讓人省心。Hive支持的查詢引擎主要有MR、Spark、Tez。MR是一如既往的性能慢,升級到3.0版也沒有任何提升。基于內(nèi)存的Spark引擎性能有了大幅提升,3.x版本的穩(wěn)定性雖然也有所加強,但是對JDBC的支持還是比較弱?;贛R優(yōu)化的Tez引擎雖然是集成最好的,但是需要根據(jù)Hadoop和Hive版本自行編譯,部署和升級都十分復(fù)雜。

Hive對更新和刪除操作的支持并不友好,導(dǎo)致在數(shù)據(jù)湖時代和實時數(shù)倉時代被迅速拋棄。

Hive的查詢引擎也很難讓用戶滿意,最典型的就是以下查詢引擎。

1)Spark支持SQL查詢,需要啟動Thrift Server,表現(xiàn)不穩(wěn)定,查詢速度一般為幾秒到幾分鐘。

2)Impala是CDH公司推出的產(chǎn)品,一般用在CDH平臺中,查詢速度比Spark快,由于是C++開發(fā)的,因此非CDH平臺安裝Impala比較困難。

3)Presto和Hive一樣,也是Facebook開源的,語法不兼容Hive,查詢速度一般為幾秒到幾分鐘。

4)Kylin是國人開源的MOLAP軟件,基于Spark引擎對Hive數(shù)據(jù)做預(yù)算并保存在Hbase或其他存儲中,查詢速度非常快并且穩(wěn)定,一般在10s以下。但是模型構(gòu)建復(fù)雜,使用和運維都不太方便。

5)ClickHouse是目前最火的OLAP查詢軟件,特點是查詢速度快,集成了各大數(shù)據(jù)庫的精華引擎,獨立于Hadoop平臺,需要把Hive數(shù)據(jù)同步遷移過去,提供有限的SQL支持,幾乎不支持關(guān)聯(lián)操作。

以Hadoop為核心的Hive數(shù)據(jù)倉庫的頹勢已經(jīng)是無法扭轉(zhuǎn)的了,MapReduce早已被市場拋棄,HDFS在各大云平臺也已經(jīng)逐步被對象存儲替代,Yarn被Kubernetes替代也是早晚的事。

我們把視野擴展到Hive體系以外,就會發(fā)現(xiàn)MPP架構(gòu)的分布式數(shù)據(jù)庫正在蓬勃發(fā)展,大有取代Hive數(shù)倉的趨勢。

其中技術(shù)最成熟、生態(tài)最完善的當(dāng)屬Greenplum體系。Greenplum自2015年開源以來,經(jīng)歷了4.x、5.x、6.x三個大版本的升級,功能已經(jīng)非常全面和穩(wěn)定了,也受到市場的廣泛推崇。基于Greenplum提供商業(yè)版本的,除了研發(fā)Greenplum的母公司Pivotal,還有中國本地團隊的創(chuàng)業(yè)公司四維縱橫。此外,還有阿里云提供的云數(shù)據(jù)庫AnalyticDB for PostgreSQL、百度云FusionDB和京東云提供的JDW,都是基于Greenplum進行云化的產(chǎn)品。華為的GaussDB在設(shè)計中也參考了Greenplum數(shù)據(jù)庫。

OLAP查詢性能最強悍的當(dāng)屬SAP商業(yè)數(shù)據(jù)庫HANA,這是數(shù)據(jù)庫領(lǐng)域當(dāng)之無愧的王者。HANA是一個軟硬件結(jié)合體,提供高性能的數(shù)據(jù)查詢功能,用戶可以直接對大量實時業(yè)務(wù)數(shù)據(jù)進行查詢和分析。

HANA唯一的缺點就是太貴,軟件和硬件成本高昂。HANA是一個基于列式存儲的內(nèi)存數(shù)據(jù)庫,主要具有以下優(yōu)勢。

  • 把數(shù)據(jù)保存在內(nèi)存中,通過對比我們發(fā)現(xiàn),內(nèi)存的訪問速度比磁盤快1000000倍,比SSD和閃存快1000倍。傳統(tǒng)磁盤讀取時間是5ms,內(nèi)存讀取時間是5ns。
  • 服務(wù)器采用多核架構(gòu)(每個刀片8×8核心CPU),多刀片大規(guī)模并行擴展,刀片服務(wù)器價格低廉,采用64位地址空間—單臺服務(wù)器容量為2TB,100GB/s的數(shù)據(jù)吞吐量,價格迅速下降,性能迅速提升。
  • 數(shù)據(jù)存儲可以選擇行存儲或者列存儲,同時對數(shù)據(jù)進行壓縮。SAP HANA采用數(shù)據(jù)字典的方法對數(shù)據(jù)進行壓縮,用整數(shù)代表相應(yīng)的文本,數(shù)據(jù)庫可以進一步壓縮數(shù)據(jù)和減少數(shù)據(jù)傳輸。

百度開源的Doris也在迎頭趕上,并且在百度云中提供云原生部署。Apache Doris是一款架構(gòu)領(lǐng)先的MPP分析型數(shù)據(jù)庫產(chǎn)品,僅須亞秒級響應(yīng)時間即可獲得查詢結(jié)果,高效支持實時數(shù)據(jù)和批處理數(shù)據(jù)。Apache Doris的分布式架構(gòu)非常簡潔,易于運維,并且支持10PB以上的超大數(shù)據(jù)集,可以滿足多種數(shù)據(jù)分析需求,例如固定歷史報表,實時數(shù)據(jù)分析,交互式數(shù)據(jù)分析和探索式數(shù)據(jù)分析等。Apache Doris支持AGGREGATE、UNIQUE、DUPLICATE三種表模型,同時支持ROLLUP和MATERIALIZED VIEW兩種向上聚合方式,可以更好地支撐OLAP查詢請求。另外,Doris也支持快速插入和刪除數(shù)據(jù),是未來實時數(shù)倉或者數(shù)據(jù)湖產(chǎn)品的有力競爭者。

嘗試在OLTP的基礎(chǔ)上融合OLAP的數(shù)據(jù)庫TiDB、騰訊TBase(云平臺上已改名為TDSQL PostgreSQL版)、阿里的OceanBase都在架構(gòu)上做了大膽的突破。TiDB采用行存儲、列存儲兩種數(shù)據(jù)格式各保存一份數(shù)據(jù)的方式,分別支持快速OLTP交易和OLAP查詢。TBase則是分別針對OLAP業(yè)務(wù)和OLTP業(yè)務(wù)設(shè)置不同的計算引擎和數(shù)據(jù)服務(wù)接口,滿足HTAP場景應(yīng)用需求。OceanBase數(shù)據(jù)庫使用基于LSM-Tree的存儲引擎,能夠有效地對數(shù)據(jù)進行壓縮,并且不影響性能,可以降低用戶的存儲成本。

02ETL工具選型

目前,業(yè)界比較領(lǐng)先的開源ETL數(shù)據(jù)抽取工具主要有Kettle、DataX和Waterdrop。商業(yè)版本的DataStage、Informatica和Data Services三款軟件不僅配置復(fù)雜、開發(fā)效率低,執(zhí)行大數(shù)據(jù)加載也非常慢。

Kettle(正式名為Pentaho Data Integration)是一款基于Java開發(fā)的開源ETL工具,具有圖形化界面,可以以工作流的形式流轉(zhuǎn),有效減少研發(fā)工作量,提高工作效率。Kettle支持不同來源的數(shù)據(jù),包括不同數(shù)據(jù)庫、Excel/CSV等文件、郵件、網(wǎng)站爬蟲等。除了數(shù)據(jù)的抽取與轉(zhuǎn)換,還支持文件操作、收發(fā)郵件等,通過圖形化界面來創(chuàng)建、設(shè)計轉(zhuǎn)換和工作流任務(wù)。

DataX是阿里巴巴集團內(nèi)部廣泛使用的離線數(shù)據(jù)同步工具/平臺,實現(xiàn)包括MySQL、Oracle、SQL Server、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute (ODPS)、DRDS等各種異構(gòu)數(shù)據(jù)源之間高效的數(shù)據(jù)同步功能。

Waterdrop是一款易用、高性能、支持實時流式和離線批處理的海量數(shù)據(jù)處理工具,程序運行在Apache Spark和Apache Flink之上。Waterdrop簡單易用、靈活配置、無需開發(fā),可運行在單機、Spark Standalone集群、Yarn集群、Mesos集群之上。Waterdrop支持實時流式處理,擁有高性能、海量數(shù)據(jù)處理能力,支持模塊化和插件化,易于擴展。用戶可根據(jù)需要來擴展插件,支持Java/Scala實現(xiàn)的Input、Filter、Output插件。

總的來說,Kettle適合中小企業(yè)ETL任務(wù)比較少并且單表數(shù)據(jù)量在百萬以下的項目,開發(fā)速度快,支持的數(shù)據(jù)來源豐富,方便快速達成項目目標。DataX支持需要批處理抽取數(shù)據(jù)的項目,支持千萬級、億級數(shù)據(jù)的快速同步,性能高效、運維穩(wěn)定。Waterdrop是后起之秀,在DataX的基礎(chǔ)上還支持流式數(shù)據(jù)處理,是DataX的有力競爭者和潛在替代產(chǎn)品。

03調(diào)度平臺選型

調(diào)度平臺可以串聯(lián)ETL任務(wù)并按照指定的依賴和順序自動執(zhí)行。調(diào)度平臺一般用Java語言開發(fā),平臺實現(xiàn)難度小,大多數(shù)數(shù)據(jù)倉庫實時廠商都有自研的調(diào)度平臺。

在早期銀行業(yè)的數(shù)據(jù)倉庫項目中,大多數(shù)據(jù)ETL過程都是通過DataStage、Informatica或者存儲過程實現(xiàn)的。筆者接觸過最好用的產(chǎn)品就是先進數(shù)通公司的Moia Control。Moia Control定位于企業(yè)統(tǒng)一調(diào)度管理平臺,致力于為企業(yè)的批處理作業(yè)制定統(tǒng)一的開發(fā)規(guī)范、運維方法,對各系統(tǒng)的批量作業(yè)進行統(tǒng)一管理、調(diào)度和監(jiān)控。Moia Control的系統(tǒng)架構(gòu)如

圖1所示,系統(tǒng)分為管理節(jié)點和Agent節(jié)點,管理節(jié)點負責(zé)調(diào)度任務(wù)的配置和分發(fā)作業(yè),Agent節(jié)點負責(zé)任務(wù)的執(zhí)行和監(jiān)控。Moia Control在金融領(lǐng)域具有非常廣泛的應(yīng)用。

圖1 Moia Control系統(tǒng)架構(gòu)

在開源領(lǐng)域,伴隨著大數(shù)據(jù)平臺的崛起,雖然先后涌現(xiàn)了Oozie、Azkaban、AirFlow等深度融合Hadoop生態(tài)的產(chǎn)品,但都是曇花一現(xiàn),目前已經(jīng)逐步被DolphinScheduler取代。DolphinScheduler于2019年8月29日由易觀科技捐贈給Apache啟動孵化。DolphinScheduler的產(chǎn)品架構(gòu)如圖2所示。

圖2 DolphinScheduler 產(chǎn)品架構(gòu)

DolphinScheduler是全球頂尖架構(gòu)師與社區(qū)認可的數(shù)據(jù)調(diào)度平臺,把復(fù)雜性留給自己,易用性留給用戶,具有如下特征。

1)云原生設(shè)計:支持多云、多數(shù)據(jù)中心的跨端調(diào)度,同時也支持Kubernetes Docker的部署與擴展,性能上可以線性增長,在用戶測試情況下最高可支持10萬級的并行任務(wù)控制。

2)高可用:去中心化的多主從節(jié)點工作模式,可以自動平衡任務(wù)負載,自動高可用,確保任務(wù)在任何節(jié)點死機的情況下都可以完成整體調(diào)度。

3)用戶友好的界面:可視化DAG圖,包括子任務(wù)、條件調(diào)度、腳本管理、多租戶等功能,可以讓運行任務(wù)實例與任務(wù)模板分開,提供給平臺維護人員和數(shù)據(jù)科學(xué)家一個方便易用的開發(fā)和管理平臺。

4)支持多種數(shù)據(jù)場景:支持流數(shù)據(jù)處理,批數(shù)據(jù)處理,暫停、恢復(fù)、多租戶等,對于Spark、Hive、MR、Flink、ClickHouse等平臺都可以直接調(diào)用。

此外,Kettle本身包含調(diào)度平臺的功能,我們可以直接在KJB文件中定義定時調(diào)度任務(wù),也可以通過操作系統(tǒng)定時任務(wù)來啟動Kettle,還可以去Kettle中文網(wǎng)申請KettleOnline在線調(diào)度管理系統(tǒng)。

Kettle通過KJB任務(wù)里面的START組件可以設(shè)置定時調(diào)度器,操作界面如圖3所示。

圖3 Kettle定時頁面

此外,在Kettle中文網(wǎng)還提供了功能更為強大的KettleOnline工具,非常適合較大型Kettle項目使用,具體功能這里就不展開介紹了。

除了上述調(diào)度工具之外,還有一些小眾的Web調(diào)度工具,例如Taskctl、XXL-JOB等。總的來說,都能滿足基本的需求。有研發(fā)實力的公司可以在開源版本的基礎(chǔ)上進一步完善功能,打造屬于自己的調(diào)度平臺。

04BI工具選型

BI是一套完整的商業(yè)解決方案,用于將企業(yè)現(xiàn)有的數(shù)據(jù)進行有效的整合,快速、準確地提供報表并提出決策依據(jù),幫助企業(yè)做出明智的業(yè)務(wù)經(jīng)營決策。BI工具是指可以快速完成報表創(chuàng)建的集成開發(fā)平臺。

和調(diào)度平臺不一樣,BI領(lǐng)域商業(yè)化產(chǎn)品百花齊放,而開源做成功的產(chǎn)品卻基本沒有。這也和產(chǎn)品的定位有關(guān),調(diào)度平臺重點關(guān)注功能實現(xiàn),整體邏輯簡單通用,便于快速研發(fā)出滿足基本功能的產(chǎn)品。而BI則需要精心打磨,不斷完善和優(yōu)化,才能獲得市場的認可。

在早期Oracle稱霸數(shù)據(jù)庫市場的年代,BI領(lǐng)域有3個巨頭,分別是IBM Cognos、Oracle BIEE和SAP BO。在早期BI領(lǐng)域,IBM 50億美元收購Cognos、SAP 68億美元收購BO都曾創(chuàng)造了軟件行業(yè)的收購紀錄。這兩起收購發(fā)生分別發(fā)生在2007年和2008年。此后是傳統(tǒng)BI的黃金十年,這三大軟件占領(lǐng)了國內(nèi)BI市場超過80%的份額。筆者參加工作的第一個崗位就是BIEE開發(fā)工程師,而后又兼職做過兩年的Cognos報表開發(fā),對二者都有比較深刻的認識。

在傳統(tǒng)BI時代,主要按照星形模型和雪花模型構(gòu)建BI應(yīng)用,在開發(fā)BI報表之前,必須先定義各種維度表和事實表,然后通過各BI軟件配套的客戶端工具完成數(shù)據(jù)建模,即事實表和維度表的關(guān)聯(lián),以及部分指標邏輯的計算(例如環(huán)比、同比、年累計等)。最后在Web頁面上定制報表樣式,開發(fā)出基于不同篩選條件下,相同樣式展現(xiàn)不同數(shù)據(jù)的固定報表。整個開發(fā)過程邏輯清晰,模塊劃分明確,系統(tǒng)運行也比較穩(wěn)定,作為整個數(shù)據(jù)分析項目的“臉面”,贏得了較高的客戶滿意度。

傳統(tǒng)BI以固定表格展現(xiàn)為主,輔以少量的圖形。雖然模型和頁面的分離讓開發(fā)變得簡單,目前廣泛應(yīng)用于金融行業(yè)和大型國企管理系統(tǒng)中,但是也有不少缺點,例如,星形模型的結(jié)構(gòu)在大數(shù)據(jù)場景下查詢速度非常慢、模型與頁面的分離造成版本難以管控、模型中內(nèi)嵌函數(shù)導(dǎo)致查找數(shù)據(jù)問題變得困難等。

2017年前后,Tableau強勢崛起,以“敏捷BI”的概念攪動了整個BI市場,引領(lǐng)BI進入一個全新的時代。

Tableau最大的特點是以可視化為核心,強調(diào)BI應(yīng)用構(gòu)建的敏捷性。Tableau拋棄了傳統(tǒng)BI的模型層,可以直接基于數(shù)據(jù)庫的表或者查詢來構(gòu)建報表模塊,大大降低了開發(fā)難度,提升了報表的開發(fā)效率和查詢性能。曾經(jīng)需要一天才能完成的報表開發(fā),現(xiàn)在可能一個小時不到就可以完成,極大提升了產(chǎn)出效率。

在傳統(tǒng)BI時代,國產(chǎn)BI軟件雖然也在發(fā)展,但是不夠強大。在敏捷BI時代,F(xiàn)ineBI、永洪BI、SmartBI、觀遠BI等商業(yè)化產(chǎn)品順勢崛起,開始搶占國內(nèi)BI市場。帆軟公司的Fine Report和FineBI更是其中的佼佼者,穩(wěn)坐國產(chǎn)BI軟件的頭把交椅,將產(chǎn)品鋪向了廣大中小企業(yè)。國產(chǎn)BI在培訓(xùn)體系上做得更為完善,以至于筆者發(fā)現(xiàn)在最近半年的面試中,差不多有一半的應(yīng)聘者使用過帆軟公司的產(chǎn)品。

在國產(chǎn)化BI之外,跨國軟件公司也在敏捷BI方向上做出了調(diào)整,其中筆者接觸過的就有微軟的Power BI和微策略的新一代MSTR Desktop。同時,云廠商也加入BI市場的爭奪,其中百度云Sugar、阿里云QuickBI都是內(nèi)部產(chǎn)品對外提供服務(wù)的案例。

總的來說,在敏捷BI領(lǐng)域,國外廠商的軟件成熟度高,版本兼容性好。國內(nèi)廠商的軟件迭代比較快,也容易出現(xiàn)Bug。從實現(xiàn)效果上看,以上軟件的差異并不大,BI戰(zhàn)場已經(jīng)變成了UI的較量了,只要UI能設(shè)計出好的樣式,絕大多數(shù)BI軟件都可以實現(xiàn)近似的效果。

關(guān)于作者:王春波,資深架構(gòu)師和數(shù)據(jù)倉庫專家,現(xiàn)任上海啟高信息科技有限公司大數(shù)據(jù)架構(gòu)師,Apache Doris和openGauss貢獻者,Greenplum中文社區(qū)參與者。 公眾號“數(shù)據(jù)中臺研習(xí)社”運營者。

本文摘編于《高效使用Greenplum:入門、進階與數(shù)據(jù)中臺》,經(jīng)出版方授權(quán)發(fā)布。(書號:9787111696490)轉(zhuǎn)載請保留文章來源。

責(zé)任編輯:武曉燕 來源: 數(shù)倉寶貝庫
相關(guān)推薦

2020-10-29 06:09:37

數(shù)據(jù)中臺數(shù)據(jù)大數(shù)據(jù)

2020-11-19 10:03:37

前臺中臺后臺

2020-12-21 15:45:53

業(yè)務(wù)中臺數(shù)據(jù)中臺技術(shù)中

2021-06-29 11:21:41

數(shù)據(jù)安全網(wǎng)絡(luò)安全黑客

2020-11-30 08:34:44

大數(shù)據(jù)數(shù)據(jù)分析技術(shù)

2022-01-05 18:27:44

數(shù)據(jù)挖掘工具

2022-04-22 11:26:55

數(shù)據(jù)管理架構(gòu)

2022-04-12 18:29:41

元數(shù)據(jù)系統(tǒng)架構(gòu)

2022-04-27 18:25:02

數(shù)據(jù)采集維度

2021-12-03 18:25:56

數(shù)據(jù)指標本質(zhì)

2021-09-03 18:38:13

數(shù)據(jù)湖數(shù)據(jù)倉庫

2021-10-09 00:02:04

DevOps敏捷開發(fā)

2021-06-13 12:03:46

SaaS軟件即服務(wù)

2022-03-27 20:32:28

Knative容器事件模型

2022-05-09 20:23:51

數(shù)據(jù)采集

2025-07-30 04:44:00

數(shù)據(jù)跨境流動

2022-04-18 07:37:30

數(shù)據(jù)信息知識

2022-05-01 22:09:27

數(shù)據(jù)模型大數(shù)據(jù)

2021-12-07 18:24:26

數(shù)據(jù)安全

2022-11-01 18:21:14

數(shù)據(jù)埋點SDK
點贊
收藏

51CTO技術(shù)棧公眾號