在過去的幾年中,在Databricks,我們看到了一種新的數據管理體係結構,該體係結構在許多客戶和用例中獨立出現:beplay体育app下载地址湖邊的房子。在這篇文章中,我們描述了這種新體係結構及其優勢比以前的方法。
數據倉庫有一個悠久的曆史在決策支持和商業智能應用程序中。自1980年代後期成立以來,數據倉庫技術繼續發展,MPP體係結構導致了能夠處理較大數據尺寸的係統。但是,盡管倉庫非常適合結構化數據,但許多現代企業必須處理非結構化數據,半結構化數據以及具有較高品種,速度和音量的數據。數據倉庫不適合許多此類用例,而且它們當然不是最具成本效率的。
隨著公司開始從許多不同來源收集大量數據,建築師開始設想一個係統以容納許多不同的分析產品和工作量的數據。大約十年前的公司開始建造數據湖- 以各種格式的原始數據存儲庫。盡管適用於存儲數據,但Data Lakes缺乏一些關鍵功能:它們不支持交易,但它們不執行數據質量,並且缺乏一致性 /隔離,因此幾乎不可能混合附加和閱讀,以及批處理和流媒體作業。由於這些原因,數據湖的許多承諾尚未實現,在許多情況下,導致數據倉庫的許多好處喪失。
對靈活,高性能係統的需求尚未減弱。公司需要係統的係統來進行各種數據應用程序,包括SQL Analytics,實時監控,數據科學和機器學習。AI的最新進展大部分都在更好的模型中處理非結構化數據(文本,圖像,視頻,音頻),但是這些恰恰是數據倉庫未對數據倉庫進行優化的數據類型。一種常見的方法是使用多個係統 - 數據湖,幾個數據倉庫以及其他專業係統,例如流媒體,時間序列,圖形和圖像數據庫。擁有多種係統會引入複雜性,更重要的是,由於數據專業人員總是需要在不同係統之間移動或複製數據,因此引入了延遲。
什麼是湖泊?
新係統開始出現,以解決數據湖泊的局限性。Lakehouse是一種新的開放式建築,結合了數據湖泊和數據倉庫的最佳要素。湖泊由新的係統設計啟用:直接以開放格式的低成本雲存儲在數據倉庫中實現相似的數據結構和數據管理功能。如果您不得不重新設計了現代世界中的數據倉庫,那麼它們就是您會得到的,現在可以使用便宜且高度可靠的存儲(以對象存儲的形式)。
Lakehouse具有以下關鍵特征:
- 交易支持:在企業Lakehouse中,許多數據管道通常會同時閱讀和編寫數據。對酸性交易的支持可確保一致性作為多方同時讀取或寫入數據,通常使用SQL。
- 模式執法和治理:湖泊應該有一種支持模式執法和進化的方法,並支持DW模式體係結構,例如Star/Snowflake-Schemas。係統應該能夠有關數據完整性的原因,它應該具有強大的治理和審計機製。
- BI支持:Lakehouses直接在源數據上使用BI工具啟用。這可以降低穩定性並提高新近度,降低潛伏期,並降低必須在數據湖和倉庫中運行兩個數據副本的成本。
- 存儲與計算分解:實際上,這意味著存儲和計算使用單獨的簇,因此這些係統能夠擴展到許多並發用戶和較大的數據大小。一些現代數據倉庫也具有此屬性。
- 開放性:他們使用的存儲格式是打開和標準化的,例如鑲木木,它們提供了API,因此包括機器學習和Python/R庫在內的各種工具和發動機都可以有效地訪問數據直接地。
- 支持從非結構化到結構化數據的各種數據類型:Lakehouse可用於存儲,完善,分析和訪問許多新數據應用所需的數據類型,包括圖像,視頻,音頻,半結構化數據和文本。
- 支持各種工作量:包括數據科學,機器學習以及SQL和分析。可能需要多種工具來支持所有這些工作負載,但它們都依賴相同的數據存儲庫。
- 端到端流:實時報告是許多企業的常態。對流的支持消除了專門用於服務實時數據應用程序的單獨係統的需求。
這些是湖泊的關鍵屬性。企業等級係統需要其他功能。安全和訪問控製工具是基本要求。包括審計,保留和血統在內的數據治理能力已成為至關重要的,尤其是鑒於最近的隱私法規。還需要啟用數據發現的工具,例如數據目錄和數據使用指標。使用Lakehouse,此類企業功能僅需要針對單個係統實施,測試和管理。
閱讀有關湖泊的內部工作。
一些早期的例子
這Databricks Lakehouse平Beplay体育安卓版本台具有湖泊的建築特征。微軟的Azure Synapse分析服務,哪個與Azure Databricks集成,啟用類似的湖泊圖案。其他托管服務,例如Bigquery和紅移光譜具有上麵列出的一些Lakehouse功能,但它們是主要關注BI和其他SQL應用程序的示例。想要構建和實施自己係統的公司可以訪問開源文件格式(三角洲湖,,,,阿帕奇冰山,,,,Apache Hudi)適合建造湖泊。
將數據湖泊和數據倉庫合並到單個係統中意味著,數據團隊可以在無需訪問多個係統的情況下使用數據而更快地移動。對於大多數企業數據倉庫來說,SQL支持和與BI工具的集成水平通常足夠。可以使用實質性的視圖和存儲程序,但用戶可能需要采用其他與傳統數據倉庫中發現的機製相同的機製。後者對於“提升和移動場景”,這需要實現與舊商業數據倉庫幾乎相同的語義的係統。
對其他類型的數據應用程序的支持如何?Lakehouse的用戶可以使用各種標準工具(火花,Python,R,機器學習庫),用於數據科學和機器學習等非BI工作負載。數據探索和改進是許多分析和數據科學應用的標準配置。Delta Lake旨在讓用戶逐步提高其Lakehouse中數據質量,直到可以消費為止。
有關技術構建塊的注釋。雖然可以將分布式文件係統用於存儲層,但對象商店更常用於湖泊中。物體商店提供低成本,高度可用的存儲,在大規模平行的讀取中表現出色,這是現代數據倉庫的基本要求。
從BI到AI
Lakehouse是一種新的數據管理體係結構,從根本上簡化了企業數據基礎架構,並在機器學習準備破壞每個行業的時代加速了創新。過去,進入公司產品或決策的大多數數據都是從操作係統中的結構化數據,而如今,許多產品以計算機視覺和語音模型,文本挖掘等形式融合了AI。為什麼要為AI使用湖泊代替數據湖?Lakehouse為您提供數據版本,治理,安全性和酸性屬性,即使是非結構化數據也需要的。
當前的湖泊降低成本,但其性能仍然可以落後於多年的投資和現實世界部署的專業係統(例如數據倉庫)。用戶可能會比其他工具(BI工具,IDES,筆記本)更喜歡某些工具(BI工具,IDES,筆記本電腦),因此湖泊還需要改進其UX和連接器到流行工具,以便他們可以吸引各種角色。隨著技術的繼續成熟和發展,這些問題和其他問題將被解決。隨著時間的流逝,湖泊將縮小這些差距,同時保留更簡單,更具成本效益且能夠為多種數據應用提供的核心特性。
閱讀數據湖區的常見問題解答更多細節。