自互聯(lián)網(wǎng)進(jìn)入大數(shù)據(jù)時(shí)代后,涌現(xiàn)了非常多的數(shù)據(jù)解決方案。最早火起來的是數(shù)據(jù)庫(kù),后來又是數(shù)據(jù)倉(cāng)庫(kù)、數(shù)據(jù)湖,再再后來是數(shù)據(jù)中臺(tái),現(xiàn)在數(shù)據(jù)湖又火起來了。站在數(shù)據(jù)時(shí)代的當(dāng)前風(fēng)口,各大云廠商如亞馬遜Amazon、阿里、微軟都在紛紛基于數(shù)據(jù)湖輸出解決方案;
各大互聯(lián)網(wǎng)企業(yè)也在基于開源數(shù)據(jù)湖、計(jì)算引擎等搭建自己的企業(yè)級(jí)數(shù)據(jù)湖。那么數(shù)據(jù)湖到底是什么?和數(shù)據(jù)倉(cāng)庫(kù)數(shù)據(jù)中臺(tái)又有什么區(qū)別?現(xiàn)有的數(shù)據(jù)湖解決方案又有哪些呢?我們一起來看看~
數(shù)據(jù)湖是一個(gè)可以存儲(chǔ)各種各樣原始數(shù)據(jù)的大型數(shù)據(jù)倉(cāng)庫(kù)。它可以存儲(chǔ)任意類型的數(shù)據(jù),包含非結(jié)構(gòu)化數(shù)據(jù)(如傳感器數(shù)據(jù))、結(jié)構(gòu)化數(shù)據(jù)(如關(guān)系型數(shù)據(jù)庫(kù)Mysql產(chǎn)生的行列數(shù)據(jù))、半結(jié)構(gòu)化數(shù)據(jù)(如XML數(shù)據(jù)、JSON數(shù)據(jù))、二進(jìn)制數(shù)據(jù)(如音頻視頻);它可以做數(shù)據(jù)生命周期管理,除了存儲(chǔ)原始數(shù)據(jù)外,還可以存儲(chǔ)數(shù)據(jù)處理(比如流處理、批處理)之后的數(shù)據(jù);它可以支持多樣的分析場(chǎng)景,比如數(shù)據(jù)倉(cāng)庫(kù)分析、實(shí)時(shí)分析、商業(yè)智能分析、機(jī)器學(xué)習(xí)。
數(shù)據(jù)湖、數(shù)據(jù)倉(cāng)庫(kù)、數(shù)據(jù)中臺(tái)又有什么區(qū)別呢?從名字上就可以看出一二。所謂數(shù)據(jù)湖,就是存放數(shù)據(jù)的湖,湖水是流動(dòng)的,能接受其它江河湖海流過來的水,又再流出去,也就是說在數(shù)據(jù)湖中可以存儲(chǔ)一切的數(shù)據(jù),不做任何處理;所謂數(shù)據(jù)倉(cāng)庫(kù),就是存放數(shù)據(jù)的倉(cāng)庫(kù),那必然是有要求和目的,也就是說在數(shù)據(jù)倉(cāng)庫(kù)中對(duì)數(shù)據(jù)格式有要求,符合標(biāo)準(zhǔn)的數(shù)據(jù)才能入庫(kù),而且建立數(shù)據(jù)倉(cāng)庫(kù)是有目的的,比如面向成本、面向銷售額進(jìn)行分析;所謂數(shù)據(jù)中臺(tái),一看就是阿里提出的概念相符合的,中臺(tái)作為前臺(tái)和后臺(tái)的一部分,是賦能業(yè)務(wù)的,為業(yè)務(wù)提供數(shù)據(jù)能力。
那么一個(gè)具體的數(shù)據(jù)湖系統(tǒng)是什么樣呢?抽象的來看包括四部分,數(shù)據(jù)存儲(chǔ)層、數(shù)據(jù)加速層、數(shù)據(jù)處理層、數(shù)據(jù)計(jì)算層。數(shù)據(jù)湖是以對(duì)象塊或文件為單元進(jìn)行存儲(chǔ),在數(shù)據(jù)存儲(chǔ)層,云上用戶一般采用S3、OSS對(duì)象存儲(chǔ),本地用戶則使用HDFS進(jìn)行存儲(chǔ);在數(shù)據(jù)加速層,主要是把經(jīng)常用的數(shù)據(jù)拿出來做集中式的存儲(chǔ),保障用戶快速獲取,也減輕網(wǎng)絡(luò)帶寬成本;在數(shù)據(jù)處理層,主要是把數(shù)據(jù)文件封裝成有業(yè)務(wù)意義的內(nèi)容,比如支持ACID(事務(wù)原子性、一致性、持久性、隔離性)、支持Schema、支持Snapshot,開源的解決方案有iceberg、Hudi;在數(shù)據(jù)計(jì)算層,主要是進(jìn)行數(shù)據(jù)任務(wù)的執(zhí)行,比如Spark、Flink、HIve的批處理流處理等。
(責(zé)任編輯:代碼如詩(shī)) |