自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

基于Lambda架構(gòu)的實時電商數(shù)倉建設(shè)經(jīng)驗分享

大數(shù)據(jù) 數(shù)據(jù)倉庫
文章分享了某電商平臺離線數(shù)倉、實時數(shù)倉、數(shù)據(jù)應(yīng)用等方面的實踐經(jīng)驗。電商平臺以APP作為載體,最重要的數(shù)據(jù)就是以訂單為核心的結(jié)構(gòu)化數(shù)據(jù)和以日志流為核心的半結(jié)構(gòu)化數(shù)據(jù),這也互聯(lián)網(wǎng)業(yè)務(wù)最典型的應(yīng)用場景。

一、背景介紹

電商是移動互聯(lián)網(wǎng)時代最重要的業(yè)務(wù)形式之一,目前主流的業(yè)務(wù)形態(tài)是B2C。在這個群雄逐鹿的年代,除了淘寶、京東、拼多多等頭部電商以外,還活躍著眾多的中小規(guī)模電商平臺。筆者所在公司的電商APP就是其中一個,目前注冊用戶超過2億,月活躍用戶接近2000萬。

電商平臺以APP作為載體,最重要的數(shù)據(jù)就是以訂單為核心的結(jié)構(gòu)化數(shù)據(jù)和以日志流為核心的半結(jié)構(gòu)化數(shù)據(jù),這也互聯(lián)網(wǎng)業(yè)務(wù)最典型的應(yīng)用場景。

訂單業(yè)務(wù)包括下單、支付、發(fā)貨、物流、評價、退貨等業(yè)務(wù)流程,但是都可以通過order_id串聯(lián)起來,數(shù)據(jù)保存在關(guān)系型數(shù)據(jù)庫中。我們這邊通過MySQL分庫分表方案承載訂單相關(guān)的業(yè)務(wù)數(shù)據(jù),目前積累了自系統(tǒng)上線以來的1.5億訂單,目前日增長訂單數(shù)為10萬左右。

點擊流數(shù)據(jù)則是APP上所有用戶的操作行為埋點記錄數(shù)據(jù),是源源不斷產(chǎn)生的半結(jié)構(gòu)化數(shù)據(jù)。由于前期對APP埋點和日志流數(shù)據(jù)做過治理,所以目前數(shù)據(jù)格式比較規(guī)范,數(shù)據(jù)輸出也比較穩(wěn)定。點擊流數(shù)據(jù)包括30+固定字段和一個擴(kuò)展json字段組成,固定字段包括設(shè)備信息、會話信息、用戶信息、網(wǎng)絡(luò)信息、埋點編碼等,擴(kuò)展json字段內(nèi)容則根據(jù)實際的頁面情況生成,不同的頁面或者埋點對應(yīng)的擴(kuò)展信息不同。點擊流數(shù)據(jù)每日增量在10億左右,ORC格式占用存儲在1.16T左右。

筆者接手電商數(shù)倉項目時,恰逢公司推進(jìn)數(shù)據(jù)治理項目,準(zhǔn)備重建電商數(shù)倉。在我接手之前,公司數(shù)倉按照不同的業(yè)務(wù)模塊劃分不同的數(shù)據(jù)集市,電商業(yè)務(wù)有專門的電商集市,但是內(nèi)部數(shù)據(jù)加工邏輯比較復(fù)雜、沒有明確的數(shù)據(jù)分層和清晰的數(shù)據(jù)處理邏輯,基本上是面向需求開發(fā),重復(fù)邏輯比較多,數(shù)據(jù)一致性差。我接手電商數(shù)倉以后,按照標(biāo)準(zhǔn)的數(shù)倉分層重構(gòu)了電商數(shù)倉,同步產(chǎn)出實時數(shù)據(jù),滿足了實時數(shù)據(jù)看板、自助分析數(shù)據(jù)集、雙十一大屏、每日業(yè)績播報等多個數(shù)據(jù)應(yīng)用。恰逢最近經(jīng)歷了新一輪618大促的考驗,因此予以總結(jié),形成經(jīng)驗分享給其他數(shù)倉開發(fā)的同行。

二、技術(shù)選型

數(shù)據(jù)中臺作為公司統(tǒng)一的數(shù)據(jù)平臺,承載著全公司大數(shù)據(jù)集群平臺的基礎(chǔ)能力,包括離線集群Hive、Hdfs、Yarn、Spark和Presto,實時集群Flink、ClickHouse,以及相關(guān)工具如自助分析工具QuickBI、調(diào)度系統(tǒng)、畫像系統(tǒng)、監(jiān)控告警系統(tǒng)、基于Zepplin的統(tǒng)一數(shù)據(jù)查詢平臺等。

公司的離線大數(shù)據(jù)有400多臺服務(wù)器,基于Yarn框架進(jìn)行統(tǒng)一的資源管理,計算資源分為離線計算、實時計算、實時查詢等不同的資源隊列,其中離線計算目前以Spark為主,部分高優(yōu)先級的任務(wù)或者時效性較高的任務(wù)已經(jīng)切換到內(nèi)部改造過的Presto計算引擎。目前公司大數(shù)據(jù)平臺上運行的離線數(shù)據(jù)處理任務(wù)主要分為MySQL2Hive數(shù)據(jù)采集、Hive2Hive數(shù)據(jù)加工、Hive2MySQL數(shù)據(jù)分發(fā)和Hive2CK數(shù)據(jù)分發(fā)四種類型,任務(wù)數(shù)分別是1.0W、1.2W、6K、500。

圖片

實時數(shù)據(jù)處理分為實時數(shù)據(jù)采集、實時數(shù)據(jù)計算和實時數(shù)據(jù)查詢?nèi)齻€方面。實時數(shù)據(jù)采集通過自動化配置,直接寫入Hive數(shù)倉的rt_ods庫,目前有接近1000張表;實時數(shù)據(jù)計算目前主要是交給Flink完成,目前線上運行的大約500個任務(wù);實時數(shù)據(jù)查詢包括MySQL和Clickhouse,接入數(shù)據(jù)量不確定。

早期的數(shù)據(jù)結(jié)果查詢都是基于MySQL分庫分表來實現(xiàn),2021年底開始引入ClickHouse作為交互式查詢引擎。選擇ClickHouse的原因主要是由于查詢性能快、查詢穩(wěn)定,只要設(shè)置合理的分區(qū),單表數(shù)據(jù)量可以達(dá)到百億甚至千億級別。目前公司在多個業(yè)務(wù)線引入了ClickHouse集群,在大數(shù)據(jù)線,ClickHouse集群主要替代MySQL分庫分表方案,來實現(xiàn)數(shù)據(jù)的快速實時查詢。大數(shù)據(jù)線的ClickHouse集群由28臺節(jié)點組成14主*2副本集群,每臺節(jié)點84核CPU+256G內(nèi)存。

三、電商離線數(shù)倉

離線數(shù)倉總體上分為三層,即ODS、DW和DM層。

圖片

ODS層也叫數(shù)據(jù)采集層,數(shù)據(jù)來源于源系統(tǒng),保留源系統(tǒng)概貌,為上游邏輯層提供原始數(shù)據(jù),隔離對源系統(tǒng)的影響。我們這邊分為SNAP、ODS、History三個數(shù)據(jù)庫,分別存放快照數(shù)據(jù)、增量追加數(shù)據(jù)和全量歷史快照數(shù)據(jù)。對于全量采集的數(shù)據(jù),直接抽取到SNAP庫;對于增量采集的數(shù)據(jù)默認(rèn)會按照修改日期抽取最近一天新增或者修改的數(shù)據(jù),按日分區(qū)存入ODS庫,然后按照庫表主鍵合并去重寫入SNAP庫;對于有保存歷史快照數(shù)據(jù)需求的表,我們還會將歷史快照復(fù)制一份按日保存到History庫。

DW層也叫數(shù)據(jù)倉庫層,我們分為DIM、DWD和DWS三個庫。

DIM庫用于保存公共維度數(shù)據(jù),例如商品、商戶、供應(yīng)商、用戶基礎(chǔ)信息等。

DWD層也叫明細(xì)模型層,數(shù)據(jù)來源于ODS層,根據(jù)上游提供原始數(shù)據(jù),劃分?jǐn)?shù)據(jù)主題,對ODS層數(shù)據(jù)進(jìn)行關(guān)聯(lián)整合。DWD層用于保存業(yè)務(wù)明細(xì)數(shù)據(jù),只做簡單的數(shù)據(jù)加工和多表關(guān)聯(lián),得到按照主題域和數(shù)據(jù)域劃分的明細(xì)數(shù)據(jù)表。

DWS層也叫輕度匯總層,數(shù)據(jù)主要來源于DWD層,以指標(biāo)加工為核心,按照維度建模的思路,加工一致性指標(biāo)和一致性維度。DWS層也包括寬表層,所以DWS通??梢詣澐譃閮刹竭M(jìn)行數(shù)據(jù)加工,第一步聚焦于指標(biāo)計算,統(tǒng)一加工業(yè)務(wù)指標(biāo),第二步關(guān)聯(lián)維度信息,形成大寬表。有時候會把大寬表叫做DWT層,但是我們這邊沒有嚴(yán)格的區(qū)分。DWS層的寬表通常都是同步到ClickHouse,用于自助分析或者固定報表查詢。

DM層也叫集市層或者數(shù)據(jù)應(yīng)用層,數(shù)據(jù)來源主要來自DWS層,可按業(yè)務(wù)和應(yīng)用主題分類,滿足特定應(yīng)用查詢。DM數(shù)據(jù)主要保存在Hive數(shù)倉的DM庫和對接數(shù)據(jù)應(yīng)用的MySQL庫、ClickHouse庫。對于數(shù)據(jù)量超過千萬的明細(xì)數(shù)據(jù)分析,數(shù)據(jù)會直接同步到ClickHouse庫;對于百萬級以下的數(shù)據(jù),則直接保存到MySQL數(shù)據(jù)庫。此外,還有應(yīng)用層的用戶畫像數(shù)據(jù)保存在HBase。DM層的大部分?jǐn)?shù)據(jù)直接來源于DWS,也有有些數(shù)據(jù)是在DWS層的基礎(chǔ)上進(jìn)行二次加工,包括簡單匯總、計算同環(huán)比、多維匯總等,先寫入DM層,再同步到外部數(shù)據(jù)庫。

具體到電商數(shù)倉模塊,我們主要構(gòu)建了以下幾個模型表:

圖片

當(dāng)然,實際項目上設(shè)計和建設(shè)的模型遠(yuǎn)不止這幾張表,我們還針對售后訂單創(chuàng)建單獨的表、根據(jù)埋點業(yè)務(wù)的運營位曝光和點擊計算下單成交率、根據(jù)商品的推薦計算推薦模型的有效性,根據(jù)搜索的結(jié)果及點擊計算不同入口的搜索成交情況等等。但是項目主要的核心的訂單和點擊數(shù)據(jù)流就是這10張表,其中商品標(biāo)簽表和用戶標(biāo)簽表還作為電商業(yè)務(wù)商品畫像和用戶畫像的基礎(chǔ)數(shù)據(jù)來源表,提供畫像標(biāo)簽的統(tǒng)一出口。

四、電商實時數(shù)倉

在離線數(shù)據(jù)加工的基礎(chǔ)上,業(yè)務(wù)用戶提出來實時數(shù)據(jù)的需求,主要包括企業(yè)微信業(yè)績播報機(jī)器人和實時交易看板、實時成交監(jiān)控、雙十一大屏等。

最開始開發(fā)的是企業(yè)微信業(yè)績播報機(jī)器人需求,每小時匯總一次當(dāng)日成交數(shù)據(jù),并和歷史成交進(jìn)行對比,將數(shù)據(jù)寫入MySQL,再由Java程序讀取數(shù)據(jù),按照指定的數(shù)據(jù)格式播報到企業(yè)微信群。

針對這個業(yè)務(wù)場景,我們按照典型的Lambda架構(gòu)設(shè)計,復(fù)用公司的Kafka寫入Hive數(shù)據(jù)組件,通過配置化實現(xiàn)關(guān)鍵業(yè)務(wù)數(shù)據(jù)自動同步到Hive的rt_ods數(shù)據(jù)庫。然后我們通過Presto計算引擎簡化訂單業(yè)務(wù)的加工邏輯,只計算關(guān)鍵成交指標(biāo),加工到DWS,并和離線數(shù)據(jù)加工的DWS層數(shù)據(jù)進(jìn)行合并去重,保留最近13個月的訂單明細(xì)。點擊流數(shù)據(jù)不需去重,只保留當(dāng)日、上月環(huán)期和去年同期三個日期的明細(xì)數(shù)據(jù),并加工好關(guān)鍵指標(biāo),保留明細(xì)數(shù)據(jù)。最后一步是加工計算本期、同期、環(huán)期的不同指標(biāo),并分別按照商品維度和用戶維度進(jìn)行數(shù)據(jù)匯總,寫入MySQL供JAVA應(yīng)用查詢。

圖片

第一代實時數(shù)倉架構(gòu)

將實時播報任務(wù)串聯(lián)成工作流,按照一小時一次的頻率執(zhí)行,截圖如下:

圖片

實時播報滿足了業(yè)務(wù)用戶跟蹤業(yè)績進(jìn)展的需求,但是時效性比較差,無法滿足實時成交監(jiān)控、實時看板和大促大屏的需求,于是我們又進(jìn)一步開發(fā)了新的實時鏈路,即Flink實時鏈路。

圖片

第二代實時數(shù)倉架構(gòu)

Flink實時鏈路主要由兩個FlinkSQL任務(wù)組成,分別讀取訂單CDC日志流數(shù)據(jù)和點擊埋點日志流數(shù)據(jù),在進(jìn)行簡單的數(shù)據(jù)轉(zhuǎn)換以后關(guān)聯(lián)離線加工的商品信息表(定時同步到HBase,全量1600萬)獲取商品維度然后寫入Clickhouse。在電商業(yè)務(wù)的多維分析中,最主要的維度就是商品維度和用戶維度,其中商品維度包括商戶信息、商品層級信息、商品規(guī)格信息、商品業(yè)務(wù)歸屬、商品價格和進(jìn)貨渠道等,用戶維度包括用戶注冊信息、用戶基本屬性、用戶成交記錄和用戶衍生標(biāo)簽。在我們的業(yè)務(wù)場景中,商品維度是千萬級別,用戶維度是億級別,經(jīng)過測試,在實時點擊流中,由于數(shù)據(jù)流量比較大,關(guān)聯(lián)用戶信息會出現(xiàn)查詢超時導(dǎo)致關(guān)聯(lián)不上的場景,因為我們砍掉了實時數(shù)據(jù)的用戶維度,而選擇在ClickHouse進(jìn)行結(jié)果數(shù)據(jù)查詢時再利用Local Join的優(yōu)勢來關(guān)聯(lián)用戶維度。實時加工數(shù)據(jù)在ClickHouse中設(shè)置的TTL時間是3天,即僅保留最近三天的實時數(shù)據(jù)。

Flink實時鏈路的關(guān)鍵在于ClickHouse,我們首先將離線加工好的訂單寬表、點擊流寬表和用戶維度信息表在每天跑批完成以后同步到Clickhouse(其中訂單寬表是每日全量同步最近三個自然年的數(shù)據(jù),點擊流每日增量同步昨日數(shù)據(jù)),然后通過一個視圖來合并離線數(shù)據(jù)和實時數(shù)據(jù),對外提供純實時的一致性數(shù)據(jù)結(jié)果。

在ClickHouse這邊主要處理邏輯有以下幾點:

離線數(shù)據(jù)取下單(點擊)日期小于當(dāng)日的數(shù)據(jù),實時數(shù)據(jù)取離線數(shù)據(jù)沒有的下單(點擊)日期對應(yīng)的數(shù)據(jù)。這是為了避免在凌晨時離線數(shù)據(jù)還沒有跑出來,導(dǎo)致查詢昨日沒有數(shù)據(jù)的情況。

實時數(shù)據(jù)關(guān)聯(lián)用戶維度,取用戶注冊時間和用戶引流渠道等信息?;贑lickHouse的特性,我們將所有接入的數(shù)據(jù)默認(rèn)按照fuid的hash值進(jìn)行數(shù)據(jù)分片,確保同一個用戶的訂單、點擊數(shù)據(jù)和用戶維度數(shù)據(jù)在同一個數(shù)據(jù)分片上,既可以實現(xiàn)Join的本地化,又能減少用戶數(shù)去重計算的資源消耗。為了強(qiáng)制join在本地進(jìn)行,我們會直接在SQL中使用右表的local表進(jìn)行關(guān)聯(lián)。

根據(jù)訂單和點擊流的不同特點,承接訂單實時數(shù)據(jù)的表我們采用ReplicatedReplacingMergeTree引擎表,點擊流實時數(shù)據(jù)表則采用ReplicatedMergeTree引擎表。在使用訂單實時數(shù)據(jù)時,我們會在表名后增加final關(guān)鍵字,確保讀取到最新的數(shù)據(jù)。

Flink實時數(shù)據(jù)由于實時性高、數(shù)據(jù)完整度高并且基本上都是明細(xì)數(shù)據(jù),可以滿足各種業(yè)務(wù)場景,因此在這個數(shù)據(jù)集基礎(chǔ)上我們創(chuàng)建實時成交看板、實時監(jiān)控預(yù)警和大促大屏等應(yīng)用需求。下一部分,我們將具體展開數(shù)據(jù)應(yīng)用場景的方案解讀。

五、數(shù)據(jù)應(yīng)用

在電商數(shù)倉的基礎(chǔ)上,我們構(gòu)建了自助分析、固定報表、企業(yè)微信播報、標(biāo)簽畫像、大促大屏等多個數(shù)據(jù)應(yīng)用。其中,自助分析和固定報表都是基于QuickBI實現(xiàn)的,企業(yè)微信播報是Java程序,標(biāo)簽畫像是自研系統(tǒng),大促大屏是基于VUE開發(fā)的Web應(yīng)用。

首先是自助分析,我們基于訂單數(shù)據(jù)和點擊流數(shù)據(jù)各自構(gòu)建了一個寬表并同步到ClickHouse,不同的類目運營用戶和數(shù)據(jù)產(chǎn)品都可以基于這兩個自主數(shù)據(jù)構(gòu)建自己的看板,并分享給其他同事。自助分析數(shù)據(jù)集根據(jù)用戶的需求還在不停的追加字段,完成各種實驗場景分析、用戶成交分析和經(jīng)營利潤分析。訂單寬表已經(jīng)擴(kuò)充到了256個字段,還有不少的用戶標(biāo)簽和商品標(biāo)簽封裝在fuser_label_json和fsku_label_json兩個json字段中。目前,訂單自助數(shù)據(jù)集是使用用戶最多,應(yīng)用最廣泛的數(shù)據(jù)集。

其次是固定報表。在自助分析數(shù)據(jù)集的基礎(chǔ)上,我們構(gòu)建了業(yè)務(wù)經(jīng)營日報、KPI進(jìn)度監(jiān)控等固定報表,滿足管理層經(jīng)營數(shù)據(jù)分析需求。這些報表主要在同環(huán)比、日周月年等維度上有一些特殊處理,導(dǎo)致需要做一些定制化開發(fā),所以由我們數(shù)倉完成。

第三個應(yīng)用是前面提到的企業(yè)微信播報,這里只截取其中一部分內(nèi)容展現(xiàn)。企業(yè)微信從早上9點到晚上24點,每小時播報一次。其中最難的是24點以后的那次播報,需要做很多特殊處理,才能實現(xiàn)。

第四個應(yīng)用是標(biāo)簽畫像。我們的標(biāo)簽畫像系統(tǒng)支持用戶和商品兩個維度,在標(biāo)簽系統(tǒng)定義的基礎(chǔ)標(biāo)簽都會換成成SparkSQL,加工以后同步到HBase。衍生標(biāo)簽在基礎(chǔ)標(biāo)簽的基礎(chǔ)上組合定義,結(jié)果數(shù)據(jù)也會加工到HBase。

圖片

標(biāo)簽系統(tǒng)提供單個用戶查詢標(biāo)簽值和標(biāo)簽組合圈選用戶兩個功能,前者用于在線接口調(diào)用,后者用于導(dǎo)出用戶進(jìn)行分析或者廣告投放。

第五個應(yīng)用是大促大屏。我們參照阿里雙十一大屏,構(gòu)建了實時大促大屏,包括實時成交額、大促期間累計成交額、用戶分類成交金額及本同期對比、商品分類成交金額及本同期對比。

六、后續(xù)演進(jìn)和流批一體探索

目前第二代實時架構(gòu)已經(jīng)穩(wěn)定運行了接近一年時間,做過一些修修補(bǔ)補(bǔ)的微調(diào),但是整體架構(gòu)沒有變動過。這中間遇到的痛點主要有:

  • 離線數(shù)據(jù)跑完以后,昨日的實時成交數(shù)據(jù)會提高,但是第三天又會下降。這是因為離線數(shù)據(jù)是以12點作為快照時間點計算的,后面的成交或者退款數(shù)據(jù)在實時里面可以體現(xiàn),但是離線需要到第三天才能體現(xiàn)。這個問題在大促期間暴露比較明顯。
  • 商品維度數(shù)據(jù)一天只更新一次,導(dǎo)致當(dāng)日上線的商品在統(tǒng)計時丟失,或者商品層級調(diào)整不能實時體現(xiàn)到看板中。
  • 流處理SQL封裝在Flink管理平臺中,批處理SQL封裝在調(diào)度平臺,導(dǎo)致兩邊容易出現(xiàn)邏輯不一致的情況。
  • 點擊流數(shù)據(jù)積累過多以后,ClickHouse存儲和查詢性能出現(xiàn)瓶頸,但是集群擴(kuò)容又比較困難,導(dǎo)致我們點擊流數(shù)據(jù)只保留最近半年數(shù)據(jù)并且一次最多查詢一個月的數(shù)據(jù),用戶滿意度降低。
  • 維度變更導(dǎo)致點擊流數(shù)據(jù)統(tǒng)計出現(xiàn)異常,比如商品類目、用戶分類等。

面對以上這些問題,我們開啟了第三代實時架構(gòu)的設(shè)計和驗證之路。第三代實時架構(gòu)我們引入了基于數(shù)據(jù)湖的流批一體模式和基于OLAP數(shù)據(jù)庫的多維實時數(shù)據(jù)查詢模式。在數(shù)據(jù)湖方面,經(jīng)過多方對比,最終選擇Hudi作為數(shù)據(jù)湖底座,繼續(xù)沿用Flink進(jìn)行流式數(shù)據(jù)加工,選擇Doris作為查詢引擎。

選擇Hudi的原因是:

數(shù)據(jù)湖技術(shù)中Hudi目前最成熟,并且有很多案例分享。

  • Hudi支持流式數(shù)據(jù)寫入和流式數(shù)據(jù)讀取,可以滿足我們保存中間過程數(shù)據(jù)的需求。
  • Hudi支持索引,可以更快的檢索數(shù)據(jù)。
  • Hudi和當(dāng)前的HDFS存儲底座結(jié)合更好。

選擇Doris的原因有很多,例如支持多表關(guān)聯(lián)、方便擴(kuò)展、支持多種數(shù)據(jù)模型、支持多種索引機(jī)制和查詢優(yōu)化,還支持存算分離遷移歷史數(shù)據(jù)到對象存儲,直接查詢外部數(shù)據(jù)源。更詳細(xì)的關(guān)于Doris的特點和使用方法,歡迎購買筆者撰寫的《Doris實時數(shù)倉實戰(zhàn)》一書。有了Doris,最大的好處是我們可以做到維度解耦,可以在查詢的時候才進(jìn)行關(guān)聯(lián),一方面減少了數(shù)據(jù)存儲空間占用,另一方面避免了歷史維度不一致的情況。

總體來說,我們的第三代實時數(shù)倉架構(gòu)如下:

圖片

采用這種流批一體的架構(gòu),可以解決流數(shù)據(jù)和實時數(shù)據(jù)切換時成交金額回退的情況;同時保留中間過程數(shù)據(jù),可以邏輯變更導(dǎo)致需要回溯歷史重算的情況;引入獨立的OLAP查詢引擎,可以解決查詢的性能問題和多表關(guān)聯(lián)問題。

雖然理想狀態(tài)下,所有數(shù)據(jù)都通過Flink流式進(jìn)行加工,但是經(jīng)過調(diào)研,我們還是有一些數(shù)據(jù)的邏輯無法做到純流處理,比如用戶下單時是新用戶還是老用戶,所以我們還是保留了批處理的鏈路,批處理的數(shù)據(jù)通過Spark加工完成以后,直接寫入Doris更新主鍵模型的部分列。

目前這個方案已經(jīng)驗證完成,正在進(jìn)行配套平臺的搭建和持續(xù)運行監(jiān)控,預(yù)計Q4會全面鋪開應(yīng)用。

相比第一代架構(gòu)和第二代架構(gòu),我們最大的特點就是用Doris代替了ClickHouse。雖然ClickHouse快并且穩(wěn)定,但是其使用門檻較高、擴(kuò)展性較差,元數(shù)據(jù)用ZooKeeper管理,在我們這邊已經(jīng)達(dá)到瓶頸,并且在實時數(shù)據(jù)高頻寫入的場景容易出現(xiàn)元數(shù)據(jù)管理異常導(dǎo)致數(shù)據(jù)寫入失敗的情況。

Apache Doris作為一款國產(chǎn)開源數(shù)據(jù)庫軟件,不僅實現(xiàn)了向量化引擎、存算分離、Merge on Write等前沿功能,還開創(chuàng)性的融合了數(shù)據(jù)分桶、行列混合存儲、多種索引支持、多種數(shù)據(jù)模型等功能到MPP數(shù)據(jù)庫中,是OLAP和數(shù)據(jù)倉庫領(lǐng)域冉冉升起的新星?!禗oris實時數(shù)倉實戰(zhàn)》一書囊括Doris的基本操作、架構(gòu)設(shè)計、進(jìn)階使用、運維管理、拓展應(yīng)用等各方面的內(nèi)容,還有大量的具體項目實踐經(jīng)驗分析,非常適合想使用Doris進(jìn)行數(shù)倉開發(fā)的小伙伴學(xué)習(xí)。目前Doris社區(qū)非?;钴S,功能還在不斷迭代和演化中,Doris背后的商業(yè)公司飛輪科技也給予了Doris發(fā)展非常大的助力,Apache Doris一定能成為一款具有全球影響力的開源產(chǎn)品。

責(zé)任編輯:姜華 來源: DataFunTalk
相關(guān)推薦

2018-10-19 14:16:09

Flink數(shù)據(jù)倉庫數(shù)據(jù)系統(tǒng)

2016-09-22 13:53:17

IBM

2022-06-22 06:42:35

美團(tuán)業(yè)務(wù)FlinkSQL數(shù)倉

2023-03-10 08:57:31

機(jī)器學(xué)習(xí)電商數(shù)據(jù)挖掘

2021-01-21 05:46:22

JavaLambda開發(fā)

2022-08-22 17:46:56

虛擬數(shù)倉Impala

2021-07-13 07:04:19

Flink數(shù)倉數(shù)據(jù)

2015-11-09 09:58:31

大數(shù)據(jù)Lambda架構(gòu)

2013-05-30 10:20:39

系統(tǒng)架構(gòu)

2011-06-29 11:09:44

SEO外鏈

2009-01-15 09:43:51

Web架構(gòu)設(shè)計緩存

2017-03-03 14:10:50

電商基礎(chǔ)架構(gòu)建設(shè)

2020-05-29 17:10:15

數(shù)據(jù)架構(gòu)數(shù)據(jù)一切數(shù)據(jù)體系

2011-05-17 17:51:43

SEO網(wǎng)站優(yōu)化

2011-06-28 18:15:50

SEO外鏈

2021-08-31 10:18:34

Flink 數(shù)倉一體快手

2021-01-18 05:20:52

數(shù)倉hive架構(gòu)

2017-02-14 15:37:32

KappaLambda

2022-08-01 15:58:48

數(shù)據(jù)倉庫架構(gòu)數(shù)據(jù)

2016-05-03 14:02:44

點贊
收藏

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