時過境遷,曾經如日中天的數據倉庫現在怎么樣了?是大勢不減還是已經奄奄一息、茍延殘喘?如果你對這個問題感到困惑,那也是情有可原的。一方面,數據倉庫的發展勢頭強勁。作為一個行業的長期觀察者,我目睹了這個行業不斷涌現的創新活動。這種趨勢是從 10 年前“Applicance Form Factor”成為數據倉庫主流開始。幾年前,隨著市場轉向新一代的云數據倉庫,這種勢頭進一步獲得了新的動力。
|
數據倉庫黯然失色
另一方面,數據倉庫的市場份額被其他技術蠶食,比如大數據、機器學習和人工智能。這種趨勢給我們造成了一種印象,即數據倉庫在企業 IT 中的優先級地位正在下降。但實際上,大多數企業現在仍然至少需要一個(甚至多個)數據倉庫來為下游的應用程序提供服務。
數據倉庫是企業的核心工作負載,這也就是為什么幾年前我就開始思考為什么數據倉庫離“死”還很遙遠;蛟S,這也解釋了為什么其他觀察者認為他們必須重新定義數據倉庫的概念,讓它能夠在數據湖和云計算時代繼續存在下去。
實際上,數據倉庫不僅在蓬勃發展,而且被認為是云計算時代的一個核心的增長前沿。如果你的眼球只盯著像 Snowflake ,可能會錯過很多東西。
數據湖的崛起
人們所說的“數據湖”正在迅速演變成為下一代數據倉庫。數據湖是指一種包含多結構數據的系統或倉庫,這些數據按照各自的格式和模式進行保存,比如大對象、文件等。
數據湖通常被作為整個企業的存儲中心,包括原數據系統的原始數據和轉化過的用于報表、可視化、分析和機器學習的數據。它們包含了分布式文件或對象存儲、機器學習模型庫、高度并行化處理集群和存儲資源。數據庫不強制使用通用的 schema 和語義,而是在讀取數據時使用 schema 和統計模型來抽取有意義的模式。
所有這些都不違背 Inmon 和 Kimball 有關數據倉庫的核心概念。從根本上說,數據倉庫的存在是為了聚合、保留和管理“單一版本的事實來源”數據。這個概念與使用數據的特定應用程序或用例無關
下一代數據倉庫
在過去的一年里,行業里出現的一些東西表明數據倉庫的角色已經發生了轉變。盡管決策支持仍然是大多數數據倉庫的核心應用場景,但我們也看到了決策自動化正在發生穩步的轉變。換句話說,數據倉庫現在正在為構建基于數據驅動的推理的機器學習應用程序提供支持。
新一代數據倉庫實際上就是數據湖,其首要設計目標是用來管理用于構建和訓練機器學習模型的數據。例如,在去年秋季的亞馬遜 發布了 AWS Lake Formation個服務旨在簡化和加快數據湖的構建過程。AWS Lake Formation 具備云數據倉庫的所有特征,盡管 AWS 沒有把它叫做數據倉庫。
AWS Lake Formation 的行為看起來很像是數據倉庫。事實上,AWS 對它的描述很容易讓我們將其與數據倉庫做對比:“數據湖是一個集中式的安全數據庫,它存儲所有數據,包括原始數據和轉換過的數據。數據湖可以幫你打破數據孤島,將不同類型的分析結合起來,從中獲得洞見和更好的商業決策指導。
事實上,AWS 將 AWS Lake Formation 描述為一種用于決策支持和人工智能決策自動化的超級數據倉庫。AWS 還特別強調,該服務旨在管理數據,“然后用戶就可以選擇他們的分析和機器學習服務,如 Amazon EMR for Spark、Amazon Redshift、Amazon Athena、Amazon SageMaker 和 Amazon QuickSight”。
值得一提的是,Databricks 最近發布了 Delta Lake 開源項目。Delta Lake 的目標與 AWS Lake Formation 類似:聚合、清理和管理數據湖中的數據集,以便更好地為機器學習提供支持。
Delta Lake 位于數據中心或云平臺的數據存儲平臺之上,比如 HDFS、Amazon S3 或微軟 Azure 大對象存儲,這些數據存儲都可以被 Spark 訪問。Delta Lake 使用 Parquet 格式來存儲數據,Databricks 將其稱為“事務存儲層”。Parquet 是一種開源的列式存儲格式,Hadoop 生態系統中的每一個項目都支持這種格式,不管使用的是哪一種處理框架。它通過樂觀并發序列化、快照隔離、數據版本、回滾和強制 schema 來支持 ACID 事務。
Delta Lake 和 AWS Lake Formation 之間的一個關鍵區別是 Delta Lake 可以支持批次數據和流式數據。另外,Delta Lake 支持 ACID 事務,可以支持數百個應用程序的并發寫入和讀取。開發者還可以訪問早期版本的數據湖,進行審計和回滾,或者重現 MLFlow 機器學習的結果。
從廣泛的層面來看,Delta Lake 似乎要與已經被廣泛采用的 Hive 展開競爭。Hive 極度依賴基于 HDFS 的存儲,而且直到最近才開始支持 ACID 事務。一年前,Hive 3 將 ACID 事務支持帶到了基于 Hadoop 的數據倉庫上。Hive 3 可以為 CRUD 操作提供原子性和快照隔離。
基于人工智能驅動的決策自動化基石
行業最近發布的這些東西——AWS Lake Formation、Delta Lake 和 Hive 3——預示著數據湖將成為所有決策支持和決策自動化應用程序和所有事務數據應用程序的治理中心。要加快這種趨勢,Hive 3 和 Delta Lake 等開源項目需要進一步吸引供應商和用戶的眼球。
“數據倉庫”一詞的定義可能會發生變化,主要指用于管理商業智能多結構數據的數據存儲。不過,底層的數據平臺會繼續演化,為基于云的人工智能管道提供數據管理基礎。
人工智能,而不是商業智能,正在推動著企業數據倉庫的演變。
(來源:百度 百家)