資料庫發展史2--數據倉庫

来源:https://www.cnblogs.com/sjkxz/archive/2022/09/16/16699066.html
-Advertisement-
Play Games

​ 回顧數據倉庫的發展歷程,大致可以將其分為幾個階段:萌芽探索到全企業集成時代、企業數據集成時代、混亂時代--"數據倉庫之父"間的論戰、理論模型確認時代以及數據倉庫產品百家爭鳴時代。 數據倉庫理論發展歷程 上世紀70年代,IBM的E.F.Codd等人提出關係型資料庫後,MIT的研究員提出單獨構建分析 ...


回顧數據倉庫的發展歷程,大致可以將其分為幾個階段:萌芽探索到全企業集成時代、企業數據集成時代、混亂時代--"數據倉庫之父"間的論戰、理論模型確認時代以及數據倉庫產品百家爭鳴時代。

數據倉庫理論發展歷程

上世紀70年代,IBM的E.F.Codd等人提出關係型資料庫後,MIT的研究員提出單獨構建分析系統的基礎理論,新的理論試圖將業務處理系統和分析系統分開,即將業務處理和分析處理分為不同層次,針對各自的特點採取不同的架構設計原則。他們認為這兩種信息處理的方式具有較大差別,應使用不同的架構和設計。但受限於當時的技術能力,這個研究僅僅停留在理論層面。

到了80年代初,W.H.Inmon 開始了“記錄系統”、“本原數據”、“決策支持資料庫”等專題的研究。幾乎同時,J. Martin在關於資料庫分類的研究中,專指一種他稱之為“第4類資料庫”的“由用戶驅動的計算環境”,為這種環境提供信息服務的是一種以“搜索和快速信息回收”為基本特征的資料庫。這個定義已經和後來的數據倉庫十分類似。

1988年,IBM 公司的研究員創造性地提出了一個新的概念--數據倉庫(Data Warehouse)。到了1991年,數據倉庫之父W.H.Inmon出版數據倉庫經典作品--《構建資料庫倉庫》,標志著數據倉庫概念的確立。書中指出,DW是一個面向主題的、集成的、相對穩定的、反映歷史變化的數據集合,並且是用於支持管理決策的數據集合。該書還提供了建立數據倉庫的指導意見和基本原則,憑藉著這本書,W.H.Inmon被稱為數據倉庫之父。

編輯

由於傳統的關係型資料庫已無法滿足構建數據倉庫的需求,在1993年Codd提出了多維資料庫和多維分析的概念,即OLAP(On-Line Analysis Processing聯機分析處理)。當時Codd認為OLTP(On- Line Transaction Processing 聯機事務處理)已不能滿足終端用戶對資料庫查詢的需要,SQL對大資料庫進行的簡單查詢也不能滿足用戶分析的需求。用戶的決策分析需要對關係資料庫進行大量計算才能得到結果,而查詢的結果並不能滿足決策者提出的需要。因此提出了多維資料庫和多維分析的概念,即OLAP。

1995年,Ralph Kimball出版了《數據倉庫工具箱》,數據倉庫行業進入少林和武當之爭。Inmon主張建立數據倉庫時採用自上而下方式,以關係型資料庫的第3範式進行數據倉庫模型設計,而Kimball則是主張自下而上的方式,力推數據集市(Data Market)建設。兩位數據倉庫領域的大咖為此吵得不可開交,他們的粉絲也紛紛站隊,這種爭吵直到Inmon推出新的BI架構CIF,把Kimball的數據集市包括了進來才算平息。

編輯

早期MPP時代的數倉

IBM DB2和Teradata是早期數倉理論的實踐者,也是市場領導者。其中Teradata是MPP數倉最成功的商業產品,幾乎是行業的天花板。誕生於1970年代末的Teradata公司,名稱來源於Tera Bytes,TB數據的存儲也展示了哪個年代創業者的雄心壯志。終於在1992年第一個TB 級的資料庫在華爾街出現。1999年,客戶擁有130TB的數據分佈於176個節點。短短7年時間,Teradata客戶的數據規模翻了176倍。

但進入新千年後,資料庫巨頭間的競爭進入白熱化階段,以Oracle Exadata為代表的一體機很快嶄露頭角。之後在Postgres基礎上演變而來的Greenplum構建了開源的MPP架構數倉,也在市場中有很高的影響力。但真正讓數倉煥然一新的是雲計算時代的雲原生數倉Snowflake。

一體機時代的數倉

新千年後,數倉進入一體機的快速發展時代,典型代表是Netezza、SAP HANA和Oracle Exadata。Netezza率先推出,後來被IBM收購。而Oracle Exadata為代表的一體機依然是今天Oracle公司的核心業務。2008年,Exadata V1誕生,由Oracle提供軟體惠普提供硬體,這一代產品僅支持數據倉庫和商務智能等OLAP工作。到了2009年9月,Exadata V2發佈,採用了SUN的(此後MySQL也屬於了Oracle),次年Oracle完成了SUN的收購。在V2版本中,Exadata存儲節點中首次採用了Flash卡,從而可以同時支持OLAP和OLTP類型的負載。有了高性能產品的同時也有了極其昂貴的價格。

著名的Conor O'Mahony(DB2的市場經理)羅列了使用一臺全機架系統(full-rack)Exdata V2所需的費用列表:

$1,150,000 硬體價格

$1,680,000 存儲伺服器的軟體價格

$369,600 存儲伺服器軟體支持和維護費用(以22%計)

$1,520,000 Oracle企業版軟體價格($47.5k*8 servers*8 cores*0.5 Intel core factor)

$736,000 Oracle RAC軟體價格($23k*8 servers*8 cores*0.5 Intel core factor)

$368,000 Oracle分區特性價格 ($11.5k*8 servers*8 cores*0.5 Intel core factor)

$368,000 Oracle高級壓縮(Advanced Compression) ($11.5k*8 servers*8 cores*0.5 Intel core factor)

$160,000 Oracle企業管理器診斷包(推薦安裝)

$160,000 Oracle企業管理器調優包(推薦安裝)

$728,640 以上除去存儲伺服器軟體的第一年軟體維護支持價格(以22%計)

Oracle Exadata 一體機

如此昂貴的價格,對於一般企業顯然無法接受。人們相信全新一代的數倉技術一定會在一個萬眾囑目的情況下出現,像蓋世英雄身披金甲聖衣,腳踏七彩祥雲而來。

雲計算時代的數倉

隨著移動互聯網、物聯網的蓬勃發展,率先掀起資料庫革命的是Google公司,他的三篇論文開啟了大數據時代,之後言數倉、大數據必稱Hadoop。但它的弊病也頗為明顯,昂貴、不方便使用、難維護等問題始終無法很好的解決。直到電腦行業七彩祥雲--雲計算出現,為整個行業和人類生活帶來巨大變化。而此時的數據倉庫在變更的前夜顯得異常安靜,古語言:三年不鳴一鳴驚人,Snowflake 就是三年不飛一飛衝天的雲計算時代雲原生數倉產品。

2012年,在Oracle公司工作十多年的2位程式員決心在雲上建立一個數據倉庫,於是誕生了Snowflake公司。它誕生的第一天,就有雲計算的特點:存儲與計算分離、按量付費、雲中立。作為第一個基於雲原生的數據倉庫,Snowflake 敏銳的抓住從本地到上雲的時代趨勢,充分利用公有雲強大基礎設施能力,讓用戶更加輕鬆實現跨雲平臺、跨區域的方式移動數據。這種基於雲原生、雲中立、跨多雲平臺的雲原生數據服務,為客戶提供巨大數據價值的同時,極大降低了客戶使用、維護、價格成本。

Snowflake產品上的成功同時也取得資本市場的巨大成功。2020年9月16日,在紐交所成功IPO,股神巴菲特斥幾億美元入股,交易首日股價翻倍市值達到704億美元,成為史上規模最大的軟體IPO,之後市值一度最高突破1200億美元,儼然成為資本市場的寵兒。

編輯

數據倉庫和資料庫關係

廣義的數據倉庫並不是一項技術,也不是一個產品,而是一種數據處理過程。數據倉庫的數據來源有多種,業務系統、日誌、互聯網、系統運行參數等等,這些數據可以在數據倉庫中進行匯合,然後通過統一的建模,加工成服務與數據分析的數據模型,最終輔助企業分析決策。

那如何構建數據倉庫呢?常見的是使用OLAP資料庫(如近年流行Clickhouse)存儲數據,通過數據建模、ETL、數據可視化等一系列操作,這一過程被稱為構建數據倉庫。由於數據倉庫基於OLAP產品,是做線上分析處理,這是與資料庫的本質區別。另外,既然是數據倉庫就要加工數據,加工數據會耗時間,所以加工數據在實際的應用中又分為批處理和實時處理。而傳統的資料庫是為瞭解決事務存在的,他們的區別如下。

編輯

總結和展望

數據倉庫是80~90年代提出的概念,互聯網企業為瞭解決更大數據量的管理問題,掀起了大數據技術新浪潮,大數據已經跳出了數倉定義領域,未來再專題闡述。隨著2020年雲原生數倉Snowflake上市並取得巨大的成功,大家開始趨向把數據倉庫、大數據、數據湖、雲存儲的技術全面融合,全世界掀起了雲原生數據倉庫和湖倉一體的熱潮,國際上Databricks、Clickhouse已經正面PK,國內有SequoiaDB、MaxCompute,AnalyticDB,GaussDB(DWS),OuShuDB、StarRocks、SelectDB、HashData等不下數十款產品,還有很多類似HTAP新品在路上,未來必將迎來百倉大戰的腥風血雨。

數據倉庫發展史


 

 

部分圖片來自網路,如有侵權請聯繫刪除。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 數據結構概述: 程式 = 數據結構 + 演算法 演算法:一些計算方法,解決問題的流程/步驟(順序、分支、迴圈......),通俗的說,演算法相當於邏輯,小部分已經被人們發掘出來了(這裡的小部分指的是書本上講的一些經典的解決一類問題的方法),解決問題的一種模式。 數據結構:將數據按照某一種特定的結構(方法) ...
  • Set A Light 3D Studio for Mac是一款可以幫助攝影工作者對3D室內攝影進行燈光位置調整的軟體,你可以清楚的瞭解到不同位置的燈光怎麼佈局。Set A Light 3D Studio Mac模擬影樓的效果,使用它可以預先在PC或Mac上搭建的照明設置,逼真地模擬預期的畫面效果和 ...
  • sed用法 基礎sed命令 sed命令的基本語法 sed OPTIONS… [SCRIPT] [INPUTFILE…] 常用的選項: -n,–quiet: 不輸出模式空間中的內容 -i: 直接編輯原文件,預設不對原文件進行操作 -e: 可以使用多個命令(腳本)進行操作 -f /path/from/s ...
  • 超級熱鍵可通過簡單編程 —— 自動化完成複雜操作,提升效率。 ▶ 快速上手 本教程需要一個很小的開源軟體 ImTip ( 體積 639 KB ), 請右鍵點開 ImTip 托盤菜單,然後點擊「管理超級熱鍵」: 然後將熱鍵配置改為如下代碼,並且勾選「啟用超級熱鍵」,再點擊「保存」按鈕使熱鍵生效。 // ...
  • Linux的哲學思想 優勢 一切都是一個文件。(包括硬體,文本,二進位,源代 碼) 系統中擁有小型,單一用途的程式。(一個程式只負責 做好自己的本職工作) 當遇到複雜任務,通過不同功能用途的程式組合起來 完成。 輕量級,一臺服務 dhcp ip 資料庫服務 網 頁 避免令人困惑的用戶界面就是沒有複雜 ...
  • 摘要:如果你的數據量很大,想儘快完成任務執行,可否有其他方案?那一定不要錯過GaussDB(DWS)的MERGE INTO功能。 本文分享自華為雲社區《一招教你如何高效批量導入與更新數據》,作者: acydy。 當前GaussDB(DWS)提供了MERGE INTO功能。本篇文章介紹MERGE IN ...
  • 8月27日,ChunJun社區與OceanBase社區聯合組織的開源線下Meetup成功舉辦,會上重磅發佈了「OceanBase&ChunJun:構建一體化數據集成方案」。 這是OceanBase&ChunJun聯合解決方案的首次發佈,將針對分庫分表的實時數據集成、跨集群/租戶的數據集成、不同數據源 ...
  • 到底什麼是metadata lock?這個鎖等待是如何產生的?會帶來什麼影響?最後又如何來解決?今天我們挑6個常見問題給大家解答一下。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...