文|數據猿
數據湖倉一體自2020年起就備受矚目,始終是數據分析領域的一個熱門話題。雖然湖倉一體的需求不斷增長,但由於標準不統一,行業巨頭企業方案支持的標準互通性差,湖倉一體市場並未像人們期待的那樣快速發展。
不過隨着Apache Iceberg有望成爲湖倉一體開放表格式事實上的標準,業界預計2025年,企業對數據湖倉一體的應用將明顯提速,湖倉一體加速落地幾乎沒有什麼懸念。
Apache Iceberg是一種專爲大規模、複雜數據集設計的開源表格式,用於管理海量數據。Iceberg可以與Spark、DuckDB、Trino和Dremio等SQL引擎,以及Snowflake和Databricks等數據平臺集成,使SQL查詢能夠在數據湖和數據倉庫上高效運行。
屆時依靠Iceberg開放開源的表格式,企業可以管理和查詢大數據,包括傳統的數據倉庫和新型的數據湖。Iceberg由於供應商無關的數據訪問模式、架構演變和互操作性,預計在大數據中的作用將不斷擴大。
湖倉一體徵程中最後的對手只剩Iceberg和Delta Lake
數據湖倉一體從提出到現在已經滲透了大約5年時間。數據湖是一個存儲大量原始數據,包括結構化、半結構化和非結構化數據的存儲庫,而數據倉庫則是用於存儲經過處理的結構化的用於分析的數據。數據湖倉一體允許企業在一個集成的環境中,既保留數據湖的靈活性和原始數據存儲能力,又能發揮數據倉庫的高效分析能力。
2019年Databricks首次提出湖倉一體這個術語,目標是將ACID事務引入數據湖,但並不是爲了將數據湖轉換爲事務數據庫,而是能夠更好地利用數據湖中的數據,讓數據湖具有高可靠性、高性能,並與Apache Spark、Trino和Presto等開源引擎兼容。
爲此,Databricks在雲對象存儲之上,爲湖倉一體定義了軟件定義的表結構。在傳統的數據庫或數據倉庫中,表結構通常是預先定義好的,包括列的名稱、類型等信息。而在湖倉一體環境下,軟件定義的表結構則更加靈活,可以通過軟件來動態地定義和調整表結構。
使用該表結構,用戶可以獲得接近數據倉庫的性能改進,以及更精細的治理,如可以對錶中的每一列、列的數據質量等進行精細管理,在行級別還可以涉及數據的生命週期管理。
三種開源表格式突出重圍。雖然AWS、Oracle、Teradata等爲數據湖倉一體引入了專有的表格式,但三種開源表格式逐漸佔據主流:由Databricks引入的 Delta Lake,以及社區發起的Apache Hudi和Apache Iceberg。
雲服務商對湖倉一體的支持在發展中顯得尤爲關鍵。AWS、Google Cloud等公佈其計劃,在其分析產品組合中首先推出對Iceberg的支持,其次才支持Delta Lake;最後也終支持Hudi。
早在2022年,表格式就成爲了Databricks和Snowflake之間的最新戰場,因爲Databricks最終開源了Delta Lake,而Snowflake則全力以赴開發Iceberg。
IDC在其2024年7月發佈的報告中認爲,Iceberg、Hudi在中國市場上擁有更多支持者,技術供應商也多選擇主動適配Iceberg或Hudi的其中一款,或兩種全部兼容。
而對Iceberg或Hudi版本的選擇也是用戶在實際開發運維中顧慮的問題,技術廠商通常會隨着Iceberg和Hudi版本的更新而更新,而最新的版本可能在數據性能和接口上存在與已有架構的問題,終端用戶更偏好於成熟版本,對產品的更新敏感度更低。
在隨着對數據湖操作性需求的增加,開放的表格式有望統一或者標準化,讓湖倉一體走向大規模應用。
Delta Lake和Iceberg在數據湖市場中並駕齊驅,爭奪數據湖的霸主地位。Databricks開創Lakehouse架構,支持將傳統數據倉庫工作負載與AI工作負載集成在單個受治理的數據副本上。爲此,所有數據都必須採用開放格式,以便不同的工作負載、應用和引擎可以訪問相同的數據。
在專有數據倉庫中,只有專有SQL引擎可以讀取、寫入或共享數據,並且通常必須複製和導出數據,以供其他應用使用,從而造成高度的供應商鎖定。而Lakehouse架構實現數據訪問普及化,最大限度地提高企業生產力,與專有數據倉庫形成鮮明對比。
Lakehouse的基礎是開源數據表格式,對存儲在對象存儲中的數據進行ACID事務處理,顯著提高了數據湖上數據操作的可靠性和性能,專爲Apache Spark、Trino、Presto等開源引擎而設計。
爲了應對這些挑戰,Databricks與Linux基金會合作創建了Delta Lake項目。自成立以來,Delta Lake擁有來自不同組織的500多名代碼貢獻者,全球有10,000 多家公司使用Delta Lake平均每天處理4+ EB的數據。
大約在創建Delta Lake的同時,Ryan Blue和Daniel Weeks在Netflix開發了Iceberg項目,並將其捐贈給了Apache軟件基金會。
數據湖是一個集中式存儲庫,允許用戶存儲任何規模的結構化和非結構化數據。它提供了一種以原生格式存儲原始數據,能夠隨時處理和分析數據的經濟高效的方式。而Apache Iceberg爲數據湖引入了表抽象層,類似於傳統數據倉庫中的抽象層,支持架構演變、ACID事務、時間旅行、分區演變等。
從那時起,Delta Lake和Iceberg就成爲湖倉一體格式的兩個領先的開源標準。儘管這兩種表格式都基於Apache Parquet,並且具有相似的目標和設計,但由於獨立開發而變得不兼容。
而Apache Hudi是一款開源的數據管理框架,專爲大數據場景設計。它能在Hadoop生態系統中,實現對海量數據的高效存儲與管理。其支持增量數據處理,能快速處理新增或更新的數據,提升數據處理效率。Hudi提供了數據版本控制和時間旅行查詢功能,方便用戶回溯歷史數據。憑藉這些特性,它在數據湖構建等場景中也得到應用,助力企業更好地管理和利用數據。
Databricks縮小與Iceberg兼容性差距,Snowflake持續強化對Iceberg的支持
湖倉一體Delta Lake和Iceberg兩大開源標準的較量,其實是其後被加大企業集團的競爭。在2024年,出現了一個可喜的現象是兩大標準後的公司開始相互兼容。
在過去的兩年裏,Databricks一直在採取措施,縮小與Apache Iceberg的差距。
一是在新產品中,增加對Apache Iceberg的兼容。2023年10月,Databricks發佈的Deta Lake 3.0版增加了對Iceberg兼容性。Delta Lake 3.0通過通用格式自動生成Iceberg所需的元數據,使Delta Lake中的數據可被Iceberg讀取,無需手動轉換,簡化了構建湖倉的集成工作,促進了數據互操作性,提升了用戶體驗。
而該公司的Delta Lake UniForm通用湖倉一體格式在2023年也增加了對Iceberg的支持。Delta Lake UniForm提供跨Delta Lake、Iceberg和Hudi的互操作性,並支持Iceberg restful目錄接口,因此公司可以在其所有數據中使用他們已經熟悉的分析引擎和工具。隨着原始Iceberg團隊的加入,Databricks將大大拓寬 Delta Lake UniForm的雄心壯志。
二通過收購增加Iceberg的人才和產品。Databricks在2024年6月宣佈收購Tabular,一家基於Apache Iceberg標準的通用存儲平臺的開發商。Tabula由三名前Netflix員工創立的,這些員工在Netflix公司共同創建了Iceberg。有趣的是Snowflake、Confluent也參與了收購Tabular的競標。
Databricks通過將Apache Iceberg和Linux Foundation Delta Lake兩種領先的開源湖倉一體格式的原始創建者聚集在一起,將在數據兼容性方面處於領先地位,因此組織不再受其數據格式的限制。
同時Databricks打算與Delta Lake和Iceberg社區密切合作,爲Lakehouse帶來格式兼容性,短期內,在Delta Lake UniForm內部實現兩種標準的兼容;從長期來看,通過向單一、開放和通用的互操作性標準發展。
此舉標誌着Databricks加大了彌合其Delta Lake存儲格式與Iceberg之間的兼容性的努力。
同時,Snowflake持續強化對Iceberg的支持。
一是Snowflake在支持Iceberg上不斷推出新產品和服務。如Snowflake於2024年6月3日推出Polaris Catalog,支持對Iceberg數據的跨引擎訪問,並已經開源。
Polaris Catalog被定義爲對Iceberg和其他數據架構的供應商中立的開放目錄實現,旨在達成對數據的集中、跨引擎訪問。它的突出優勢包括跨引擎讀寫功能,無論是面對複雜的數據交互需求,還是多元的業務場景,都能輕鬆應對。
Snowflake 2024年8月推出Unified Iceberg Tables,助力客戶高效管理和運用Iceberg數據,讓客戶的Iceberg數據在Snowflake的專業管理下釋放更大價值,進一步拓展了Iceberg在實際業務中的應用邊界。
二是Snowflake在推進數據生態發展的道路上持續發力,不斷擴大與各方合作以強化對Apache Iceberg開源表格式的支持。
Snowflake與主要雲基礎設施公司、數據湖倉一體提供商Dremio以及流數據處理公司Confluent構建起緊密的互操作性,打通數據流通的各個環節,讓數據在不同平臺間順暢流轉。
Snowflake與Microsoft深化合作,全力實現Snowflake和Microsoft Fabric數據分析平臺之間的雙向數據訪問,使得雙方用戶都能突破平臺限制,便捷地獲取所需數據,無論是用於日常的數據分析,還是前沿的人工智能應用程序及模型開發,都有了更廣闊的數據資源池。
Snowflake堅定支持Iceberg主要基於多重考量:從市場反饋來看,Iceberg已在業界嶄露頭角,市場潛力巨大;從技術特性上講,Iceberg能夠隨着時間推移靈活改進表架構而無需繁瑣重寫,讓企業輕鬆應對數據結構的動態變化;其靈活分區的設計使數據管理更加精細、高效;極具特色的“時間旅行”功能,便於企業隨時回溯歷史數據進行查詢,精準挖掘數據價值,這些特性精準匹配了企業在數據處理、分析與利用等多方面的核心訴求,與Snowflake致力於爲客戶提供高效數據解決方案的目標不謀而合。
多家湖倉一體企業持續支持Iceberg性能提供和功能擴展。例如Dremio著提高了Iceberg數據湖的查詢性能,同時最大程度減少用戶干預操作。
其核心亮點聚焦兩大全新功能:Live Reflections(實時反射)與ResultSet Caching(結果集緩存)。Dremio Reflections作爲公司數據湖引擎的關鍵特性,通過構建優化的預計算數據呈現形式,爲查詢加速賦能。它形似物化視圖,卻更加靈活,深度融入Dremio架構體系,進而實現無需挪動、複製數據,就能高速且交互式地查詢存儲於數據湖內的大規模數據集。
實時反射功能夠全方位監控數據湖中的活動軌跡,精準洞察高頻使用的查詢,進而針對性加速。一旦基本Iceberg表出現變更,它便能自動更新物化視圖與聚合結果,時刻保障最佳查詢性能。用戶藉助系統智能推薦,選用最具價值、利於系統整體性能的反射配置,輕鬆實現查詢加速,全程無需操心維護事宜。
結果集緩存功能可將源自所有數據源的查詢響應速度提升高達28倍,其祕訣在於存儲的並非單純的查詢,而是頻繁訪問的查詢結果。
此外,新上線的讀取時合併功能讓Iceberg表的寫入與讀取操作效率飆升85%。基於通知的自動讀取特性可自動監控對象存儲中的新文件,一旦察覺,立即自動獲取,確保數據湖持續更新,無縫銜接新數據。顯然,Dremio此番創新,切實爲Iceberg數據湖的高效運用築牢根基,開啓全新的數據查詢篇章。
Iceberg能成爲事實上的標準嗎?
Delta Lake和Iceberg並駕齊驅削弱了湖倉一體架構的價值。隨着時間的推移,許多其他開源和專有引擎都採用了這些格式。但是,他們通常只採用其中一種標準,而且通常只採用該標準的一部分,從而導致企業數據碎片化和孤立,削弱了湖倉一體架構的價值。
Dremio在“2024年數據湖倉一體現狀報告”顯示,31%的受訪者使用Apache Iceberg,而39%的受訪者使用Delta Lake。
然而,在未來三年內,29%的受訪者預計將採用Iceberg,而Delta Lake的這一比例僅爲23%。
報告認爲,兩個標準之間的競爭其實是兩個陣營之間的競爭,問題不在於確定哪個標準更好,而在於投資其中哪種格式帶來收益更大。
Iceberg優勢得到進一步的認可。存儲和分析大量數據的需求導致了數據湖的廣泛採用。數據湖提供了一種經濟高效的方式來大規模存儲結構化和非結構化數據,使組織能夠打破數據孤島並從各種數據源獲得見解。
然而,隨着規模和複雜性的增長,數據湖變得越來越難以高效管理和查詢。缺乏事務一致性、架構實施和性能優化導致許多數據湖實施成爲“數據沼澤”——雜亂無章、難以導航且難以從中提取價值。
Apache Iceberg是一種開放表格式,旨在應對這些挑戰,並使數據湖的性能更高、更易於管理,並且能夠適應各種使用案例。
Iceberg通過爲數據湖帶來一組類似倉庫的功能(通常稱爲數據湖倉一體),在現代數據湖架構中發揮着至關重要的作用:
Iceberg爲湖中存儲的數據文件提供了一個表抽象層,允許用戶使用熟悉的SQL命令與數據進行交互,從而更輕鬆地查詢和管理湖中的數據。
Iceberg支持ACID事務,確保數據的一致性和可靠性。使用ACID事務,多個用戶可以同時向同一個表讀取和寫入數據,而不會發生衝突或數據損壞。這在數據湖環境中尤爲重要,因爲數據不斷更新並由多個用戶和應用程序訪問。
Iceberg支持Schema演變。隨着數據的發展,Iceberg允許用戶輕鬆地在表中添加、刪除或重命名列,而無需重寫整個數據集。這種靈活性使組織能夠適應不斷變化的數據要求並避免昂貴的數據遷移。
Iceberg提供強大的優化功能,可以提高數據湖中的查詢性能。其中一種優化是數據壓縮,它涉及將小數據文件合併爲較大的數據文件,從而減少查詢執行期間需要掃描的文件數量。Iceberg還支持分區修剪,這允許查詢跳過不相關的分區,從而顯著減少需要處理的數據量。
Iceberg支持時間旅行,即用戶可以查詢錶的歷史版本。這對於審計、調試和重現結果特別有用。通過時間旅行,用戶可以輕鬆比較數據隨時間的變化並跟蹤其數據的沿襲。
通過將這些類似倉庫的功能引入數據湖,Iceberg使其更具可用性和適應性,使組織能夠運行復雜的查詢、執行實時更新並支持各種工作負載,包括批處理、流式處理和機器學習。
爲什麼採用Iceberg作爲數據湖的新標準?由於幾個令人信服的原因,公司越來越多地將Iceberg用於其數據湖架構。
Iceberg的主要優勢之一是其開放格式,它避免了供應商鎖定。與專有數據格式不同,Iceberg是一個開源項目,由不斷壯大的開發人員和組織社區提供支持。這意味着公司可以將Iceberg與各種工具和平臺一起使用,使他們能夠靈活地選擇最適合自己需求的解決方案。
標準化是採用Iceberg的另一個重要驅動力。隨着Iceberg的日益普及,公司可以依靠一組通用的規則和約定來存儲和訪問數據,從而確保用於查詢或管理數據的不同應用程序之間的一致性和可靠性。
數據管理和查詢優化對公司很有吸引力,因爲它們提供了一種更簡單的數據操作方法。藉助Iceberg,數據湖項目可以更快地啓動,並且成爲數據工程資源匯的風險更小。
最後,Iceberg使公司能夠將其數據湖使用案例擴展到傳統SQL分析之外。藉助 Iceberg對實時更新和流數據攝取的支持,公司可以構建實時應用程序和數據管道,以便在數據到達時對其進行處理。Iceberg還與機器學習框架很好地集成,使數據科學家能夠直接使用存儲在湖中的數據訓練模型。
2025年數據分析的標準將是數據湖倉一體
專家預言,2025年數據分析的標準將是數據湖倉一體。全世界已經看到了各種各樣的分析模式:數據湖、數據倉庫、內存分析、嵌入式分析等。但到2025 年,數據分析的標準將是數據湖倉一體,這是基於Iceberg成爲湖倉一體事實上的標準作出的判斷。
一大理由是開放數據格式的標準化,推動互操作性。數據湖倉一體的兩個最大支持者是Snowflake和Databricks。企業已經厭倦了Snowflake與Databricks之爭,以尋求獲得不斷發展的數據架構,
企業希望跨不同平臺、合作伙伴和供應商無縫組合數據。隨着企業優先考慮訪問及時、高質量的數據,開放數據格式將不再是可有可無的,而是企業取得成功的必要條件。
那些未能接受開放標準的企業可能會失去競爭優勢,而那些採用標準的企業將能夠提供高質量的產品和實時的跨平臺數據洞察。
另一大理由是節省資金,減少對重複數據存儲的需求。到2025年,預計超過一半的分析工作負載將在湖倉一體架構上運行,是由湖倉一體提供的成本節省和靈活性驅動的。
目前,公司正在從雲數據倉庫轉向湖倉一體,不僅僅是爲了節省資金,也是爲了簡化數據訪問模式,並減少對重複數據存儲的需求。
大型組織報告稱,湖倉一體節省了超過50%的成本,對於具有大量數據處理需求的企業來說,這是一個好消息。
數據湖倉一體市場未來看好。數據湖倉一體概念因其靈活性和規模而廣受歡迎。Databricks 2024年發佈的研究發現,在接受調查的600名技術領導者中,近3/4已經採用了湖倉一體架構,其餘公司預計將在未來三年內採用。
SNS Insider Pvt估計,數據湖市場每年將增長21%以上,到2030年將達到570億美元。
國內的市場研究機構愛分析則認爲,2022年中國湖倉一體平臺軟件市場規模僅爲15.2億元,預計到2025年,這一數字有望達到97.6億元,2022-2025三年複合增長率高達86%。
IDC 2024年發佈的數據顯示,數據量的快速增長、對數據管理需求的升級以及技術架構複雜度和獨立開發成本的上升,都將推動企業開始越來越多地考慮湖倉一體的管理解決方案。同時,多模數據管理、實時化將會是數據管理服務演進的兩個重要方向。
最終入選IDC的報告的廠商包括阿里雲、柏睿數據、滴普科技、華爲雲、鏡舟科技、科傑科技、偶數科技、數新網絡、騰訊雲、星環科技、新華三、亞馬遜雲科技、亞信科技。
湖倉一體在技術、應用、生態與安全合規等方面的發展趨勢不用忽視。從長遠來看,湖倉一體不會取代數據湖,數據科學家需要自由漫遊,而不受關係表結構的阻礙來發現模式和開發模型;湖倉一體也不會取代專門爲報告創建的專用數據倉庫或數據集市。
IDC認爲Gen AI帶動底層多種數據架構組合能力,包括多模態的數據管理、數據全鏈路分析、數據血緣分析、數據跨結構存儲和自動化流動等,湖倉、實時成爲用戶建設、更新數據平臺最關心的方向
在技術方面,中國數據湖倉一體市場朝着多模態數據管理融合邁進,以適應人工智能等應用需求。存算分離架構不斷深化,靈活調配計算與存儲資源,提升資源利用率與擴展性。
在應用層面,數據湖倉一體市場在各行業廣泛滲透,如金融領域,助力風險管理與精準營銷等;製造業中,實現生產監控與供應鏈協同管理;能源電力行業,支撐能源調度與智能電網建設;政府與公共服務領域,推動數據共享與決策優化;智能駕駛行業,爲自動駕駛算法訓練等提供數據支持,賦能各行業數字化轉型,推動業務發展與創新。
未來數據湖倉一體與AI將深度融合,爲AI模型提供數據支撐。在雲原生趨勢下,積極構建雲原生生態,與雲服務深度整合,實現資源彈性調配。同時跨平臺與互操作性不斷增強,打破數據孤島,促進數據共享。
免責聲明:投資有風險,本文並非投資建議,以上內容不應被視為任何金融產品的購買或出售要約、建議或邀請,作者或其他用戶的任何相關討論、評論或帖子也不應被視為此類內容。本文僅供一般參考,不考慮您的個人投資目標、財務狀況或需求。TTM對信息的準確性和完整性不承擔任何責任或保證,投資者應自行研究並在投資前尋求專業建議。