浅谈数据湖
一、數(shù)據(jù)湖的定義
二、數(shù)據(jù)湖的參考架構(gòu)
? ??1、數(shù)據(jù)集成能力(數(shù)據(jù)接入)
? ??2、數(shù)據(jù)存儲(chǔ)
? ??3、數(shù)據(jù)搜索
? ??4、數(shù)據(jù)治理
? ??5、數(shù)據(jù)質(zhì)量
? ??6、安全管控
? ??7、自助數(shù)據(jù)發(fā)現(xiàn)
三、數(shù)據(jù)湖與數(shù)據(jù)倉(cāng)庫(kù)的區(qū)別
四、數(shù)據(jù)湖的優(yōu)勢(shì)
一、數(shù)據(jù)湖的定義
維基百科上定義,數(shù)據(jù)湖(Data Lake)是一個(gè)以原始格式存儲(chǔ)數(shù)據(jù)的存儲(chǔ)庫(kù)或系統(tǒng)。它按原樣存儲(chǔ)數(shù)據(jù),而無(wú)需事先對(duì)數(shù)據(jù)進(jìn)行結(jié)構(gòu)化處理。一個(gè)數(shù)據(jù)湖可以存儲(chǔ)結(jié)構(gòu)化數(shù)據(jù)(如關(guān)系型數(shù)據(jù)庫(kù)中的表),半結(jié)構(gòu)化數(shù)據(jù)(如CSV、日志、XML、JSON),非結(jié)構(gòu)化數(shù)據(jù)(如電子郵件、文檔、PDF)和二進(jìn)制數(shù)據(jù)(如圖形、音頻、視頻)。
但是隨著大數(shù)據(jù)技術(shù)的融合發(fā)展,數(shù)據(jù)湖不斷演變,匯集了各種技術(shù),包括數(shù)據(jù)倉(cāng)庫(kù)、實(shí)時(shí)和高速數(shù)據(jù)流技術(shù)、數(shù)據(jù)挖掘、深度學(xué)習(xí)、分布式存儲(chǔ)和其他技術(shù)。逐漸發(fā)展成為一個(gè)可以存儲(chǔ)所有結(jié)構(gòu)化和非結(jié)構(gòu)化任意規(guī)模數(shù)據(jù),并可以運(yùn)行不同類(lèi)型的大數(shù)據(jù)工具,對(duì)數(shù)據(jù)進(jìn)行大數(shù)據(jù)處理、實(shí)時(shí)分析和機(jī)器學(xué)習(xí)等操作的統(tǒng)一數(shù)據(jù)管理平臺(tái)。
二、數(shù)據(jù)湖的參考架構(gòu)
結(jié)合目前開(kāi)源的數(shù)據(jù)湖平臺(tái)和組件,總結(jié)數(shù)據(jù)湖的基本參考架構(gòu)如下:
總結(jié)數(shù)據(jù)湖最核心的能力包括:
1、數(shù)據(jù)集成能力(數(shù)據(jù)接入)
1)接入不同數(shù)據(jù)源,包括數(shù)據(jù)庫(kù)中的表(關(guān)系型或者非關(guān)系型)、各種格式的文件(csv、json、文檔等)、數(shù)據(jù)流、ETL工具(Kafka、Logstash、DataX等)轉(zhuǎn)換后的數(shù)據(jù)、應(yīng)用API獲取的數(shù)據(jù)(如日志等);
2)自動(dòng)生成元數(shù)據(jù)信息,確保進(jìn)入數(shù)據(jù)湖的數(shù)據(jù)都有元數(shù)據(jù);
3)提供統(tǒng)一的接入方式,如統(tǒng)一的API或者接口;
2、數(shù)據(jù)存儲(chǔ)
數(shù)據(jù)湖存儲(chǔ)的數(shù)據(jù)量巨大且來(lái)源多樣,數(shù)據(jù)湖應(yīng)該支持異構(gòu)和多樣的存儲(chǔ),如HDFS、HBase、Hive等;
3、數(shù)據(jù)搜索
數(shù)據(jù)湖中擁有海量的數(shù)據(jù),對(duì)于用戶(hù)來(lái)說(shuō),明確知道數(shù)據(jù)湖中數(shù)據(jù)的位置,快速的查找到數(shù)據(jù),是一個(gè)非常重要的功能。
4、數(shù)據(jù)治理
1)自動(dòng)提取元數(shù)據(jù)信息,并統(tǒng)一存儲(chǔ);
2)對(duì)元數(shù)據(jù)進(jìn)標(biāo)簽和分類(lèi),建立統(tǒng)一的數(shù)據(jù)目錄;
3)建立數(shù)據(jù)血緣,梳理上下游的脈絡(luò)關(guān)系,有助于數(shù)據(jù)問(wèn)題定位分析、數(shù)據(jù)變更影響范圍評(píng)估、數(shù)據(jù)價(jià)值評(píng)估;
4)跟蹤數(shù)據(jù)時(shí)間旅行,提供不同版本的數(shù)據(jù),便于進(jìn)行數(shù)據(jù)回溯和分析;
5、數(shù)據(jù)質(zhì)量
1)對(duì)于接入的數(shù)據(jù)質(zhì)量管控,提供數(shù)據(jù)字段校驗(yàn)、數(shù)據(jù)完整性分析等功能;
2)監(jiān)控?cái)?shù)據(jù)處理任務(wù),避免未執(zhí)行完成任務(wù)生成不完備數(shù)據(jù);
6、安全管控
1)對(duì)數(shù)據(jù)的使用權(quán)限進(jìn)行監(jiān)管;
2)對(duì)敏感數(shù)據(jù)進(jìn)行脫敏和加密;
7、自助數(shù)據(jù)發(fā)現(xiàn)
提供一系列數(shù)據(jù)分析工具,便于用戶(hù)對(duì)數(shù)據(jù)湖的數(shù)據(jù)進(jìn)行自助數(shù)據(jù)發(fā)現(xiàn),包括:
- 聯(lián)合分析;
- 交互式大數(shù)據(jù)SQL分析;
- 機(jī)器學(xué)習(xí)
- BI報(bào)表
- ......
三、數(shù)據(jù)湖與數(shù)據(jù)倉(cāng)庫(kù)的區(qū)別
數(shù)據(jù)倉(cāng)庫(kù)是一種具有正式架構(gòu)的成熟的、安全的技術(shù)。它們存儲(chǔ)經(jīng)過(guò)全面處理的結(jié)構(gòu)化數(shù)據(jù),以便完成數(shù)據(jù)治理流程。數(shù)據(jù)倉(cāng)庫(kù)將數(shù)據(jù)組合為一種聚合、摘要形式,以在企業(yè)范圍內(nèi)使用,并在執(zhí)行數(shù)據(jù)寫(xiě)入操作時(shí)寫(xiě)入元數(shù)據(jù)和模式定義。數(shù)據(jù)倉(cāng)庫(kù)通常擁有固定的配置;它們是高度結(jié)構(gòu)化的,因此不太靈活和敏捷。數(shù)據(jù)倉(cāng)庫(kù)成本與在存儲(chǔ)前處理所有數(shù)據(jù)相關(guān),而且大容量存儲(chǔ)的費(fèi)用相對(duì)較高。
相較而言,數(shù)據(jù)湖是較新的技術(shù),擁有不斷演變的架構(gòu)。數(shù)據(jù)湖存儲(chǔ)任何形式(包括結(jié)構(gòu)化和非結(jié)構(gòu)化)和任何格式(包括文本、音頻、視頻和圖像)的原始數(shù)據(jù)。根據(jù)定義,數(shù)據(jù)湖不會(huì)接受數(shù)據(jù)治理,但專(zhuān)家們都認(rèn)為良好的數(shù)據(jù)管理對(duì)預(yù)防數(shù)據(jù)湖轉(zhuǎn)變?yōu)閿?shù)據(jù)沼澤不可或缺。數(shù)據(jù)湖在數(shù)據(jù)讀取期間創(chuàng)建模式。與數(shù)據(jù)倉(cāng)庫(kù)相比,數(shù)據(jù)湖缺乏結(jié)構(gòu)性,而且更靈活;它們還提供了更高的敏捷性。在檢索數(shù)據(jù)之前無(wú)需執(zhí)行任何處理,而且數(shù)據(jù)湖特意使用了便宜的存儲(chǔ)。
1)數(shù)倉(cāng)中保存的都是結(jié)構(gòu)化處理后的數(shù)據(jù),而數(shù)據(jù)湖中可以保存原始數(shù)據(jù)也可以保存結(jié)構(gòu)化處理后的數(shù)據(jù),保證用戶(hù)能獲取到各個(gè)階段的數(shù)據(jù)。因?yàn)閿?shù)據(jù)的價(jià)值跟不同的業(yè)務(wù)和用戶(hù)強(qiáng)相關(guān),有可能對(duì)于A用戶(hù)沒(méi)有意義的數(shù)據(jù),但是對(duì)于B用戶(hù)來(lái)說(shuō)意義巨大,所以都需要保存在數(shù)據(jù)湖中。
2)數(shù)據(jù)湖能夠支持各種用戶(hù)使用,包括數(shù)據(jù)科學(xué)家這類(lèi)專(zhuān)業(yè)的數(shù)據(jù)人員。
四、數(shù)據(jù)湖的優(yōu)勢(shì)
- 輕松地收集和攝入數(shù)據(jù):企業(yè)中的所有數(shù)據(jù)源都可以送入數(shù)據(jù)湖中。因此,數(shù)據(jù)湖成為了存儲(chǔ)在企業(yè)內(nèi)部服務(wù)器或云服務(wù)器中的結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)的無(wú)縫訪問(wèn)點(diǎn)。通過(guò)數(shù)據(jù)分析工具可以輕松地獲得整個(gè)無(wú)孤島的數(shù)據(jù)集合。此外,數(shù)據(jù)湖可以用多種文件格式存儲(chǔ)多種格式的數(shù)據(jù),比如文本、音頻、視頻和圖像。這種靈活性簡(jiǎn)化了舊有數(shù)據(jù)存儲(chǔ)的集成。
- 支持實(shí)時(shí)數(shù)據(jù)源:數(shù)據(jù)湖支持對(duì)實(shí)時(shí)和高速數(shù)據(jù)流執(zhí)行 ETL 功能,這有助于將來(lái)自 IoT 設(shè)備的傳感器數(shù)據(jù)與其他數(shù)據(jù)源一起融合到數(shù)據(jù)湖中。
- 更快地準(zhǔn)備數(shù)據(jù):分析師和數(shù)據(jù)科學(xué)家不需要花時(shí)間直接訪問(wèn)多個(gè)來(lái)源,可以更輕松地搜索、查找和訪問(wèn)數(shù)據(jù),這加速了數(shù)據(jù)準(zhǔn)備和重用流程。數(shù)據(jù)湖還會(huì)跟蹤和確認(rèn)數(shù)據(jù)血統(tǒng),這有助于確保數(shù)據(jù)值得信任,還會(huì)快速生成可用于數(shù)據(jù)驅(qū)動(dòng)的決策的 BI。
- 更好的可擴(kuò)展性和敏捷性:數(shù)據(jù)湖可以利用分布式文件系統(tǒng)來(lái)存儲(chǔ)數(shù)據(jù),因此具有很高的擴(kuò)展能力。開(kāi)源技術(shù)的使用還降低了存儲(chǔ)成本。數(shù)據(jù)湖的結(jié)構(gòu)沒(méi)那么嚴(yán)格,因此天生具有更高的靈活性,從而提高了敏捷性。數(shù)據(jù)科學(xué)家可以在數(shù)據(jù)湖內(nèi)創(chuàng)建沙箱來(lái)開(kāi)發(fā)和測(cè)試新的分析模型。
- 具有人工智能的高級(jí)分析:訪問(wèn)原始數(shù)據(jù),創(chuàng)建沙箱的能力,以及重新配置的靈活性,這些使得數(shù)據(jù)湖成為了一個(gè)快速開(kāi)發(fā)和使用高級(jí)分析模型的強(qiáng)大平臺(tái)。數(shù)據(jù)湖非常適合使用機(jī)器學(xué)習(xí)和深度學(xué)習(xí)來(lái)執(zhí)行各種任務(wù),比如數(shù)據(jù)挖掘和數(shù)據(jù)分析,以及提取非結(jié)構(gòu)化數(shù)據(jù)。
總結(jié)
- 上一篇: 目标检测之选择性搜索-Selective
- 下一篇: 从Google Mesa到百度PALO(