深夜凌晨女朋友问什么是数据仓库,我的回答让她惊讶,然后发现。。。
2021大數據領域優質創作博客,帶你從入門到精通,該博客每天更新,逐漸完善大數據各個知識體系的文章,幫助大家更高效學習。
有對大數據感興趣的可以關注微信公眾號:三幫大數據
事情是這樣的
晚上,正在聚精會神寫代碼
突然,收到女朋友給我發來的消息
不懂代碼的她又向提出這么專業性名詞,我當場驚呆了,于是決定寫一篇詳細的數據倉庫介紹,然后發現我寫完了,她就睡著了。。。?
目錄
歷史文章
前言
數據倉庫的介紹
一、數據倉庫的基本概念
二、數據倉庫的主要特征
1.主題性
2.集成性
3.穩定性
4.時變性
三、數據倉庫與數據庫區別
1、數據庫
2、數據倉庫
3、兩者區別
4、數據倉庫分層架構
5、數據倉庫之ETL
歷史文章
百度、阿里、騰訊平臺架構都熟悉,小米大數據平臺架構OLAP架構演進是否了解
女朋友問阿里雙十一實時大屏如何實現,我驚呆一會,馬上手把手教她背后的大數據技術
前言
?2021年全網最詳細的大數據筆記,輕松帶你從入門到精通,該欄目每天更新,匯總知識分享
數據倉庫的介紹
一、數據倉庫的基本概念
數據倉庫,英文名稱為Data Warehouse,可簡寫為DW或DWH。數據倉庫顧名思義,是一個很大的數據存儲集合,出于企業的分析性報告和決策支持目的而創建,對多樣的業務數據進行篩選與整合。它為企業提供一定的BI(商業智能)能力,指導業務流程改進、監視時間、成本、質量以及控制。
數據倉庫的輸入方是各種各樣的數據源,最終的輸出用于企業的數據分析、數據挖掘、數據報表等方向。
???????二、數據倉庫的主要特征
數據倉庫是面向主題的(Subject-Oriented )、集成的(Integrated)、穩定的(Non-Volatile)和時變的(Time-Variant )數據集合,用以支持管理決策。
1.主題性
不同于傳統數據庫對應于某一個或多個項目,數據倉庫根據使用者實際需求,將不同數據源的數據在一個較高的抽象層次上做整合,所有數據都圍繞某一主題來組織。
這里的主題怎么來理解呢?比如對于城市,“天氣濕度分析”就是一個主題,對于淘寶,“用戶點擊行為分析”就是一個主題。
2.集成性
數據倉庫中存儲的數據是來源于多個數據源的集成,原始數據來自不同的數據源,存儲方式各不相同。要整合成為最終的數據集合,需要從數據源經過一系列抽取、清洗、轉換的過程。
3.穩定性
數據倉庫中保存的數據是一系列歷史快照,不允許被修改。用戶只能通過分析工具進行查詢和分析。這里說明一點,數據倉庫基本上是不許允許用戶進行修改,刪除操作的。大多數的場景是用來查詢分析數據。
4.時變性
數據倉庫會定期接收新的集成數據,反應出最新的數據變化。這和穩定特點并不矛盾。
三、數據倉庫與數據庫區別
1、數據庫
數據庫是面向交易的處理系統,它是針對具體業務在數據庫聯機的日常操作,通常對記錄進行查詢、修改。用戶較為關心操作的響應時間、數據的安全性、完整性和并發支持的用戶數等問題。傳統的數據庫系統作為數據管理的主要手段,主要用于操作型處理,也被稱為聯機事務處理 OLTP(On-Line Transaction Processing)。
???????2、數據倉庫
數據倉庫一般針對某些主題的歷史數據進行分析,支持管理決策,又被稱為聯機分析處理 OLAP(On-Line Analytical Processing)。
首先要明白,數據倉庫的出現,并不是要取代數據庫。
???????3、兩者區別
- 數據庫是面向事務的設計,數據倉庫是面向主題設計的。
- 數據庫一般存儲業務數據,數據倉庫存儲的一般是歷史數據。
- 數據庫設計是盡量避免冗余,一般針對某一業務應用進行設計,比如一張簡單的User表,記錄用戶名、密碼等簡單數據即可,符合業務應用,但是不符合分析。數據倉庫在設計是有意引入冗余,依照分析需求,分析維度、分析指標進行設計。
- 數據庫是為捕獲數據而設計,數據倉庫是為分析數據而設計。
以銀行業務為例。數據庫是事務系統的數據平臺,客戶在銀行做的每筆交易都會寫入數據庫,被記錄下來,這里,可以簡單地理解為用數據庫記賬。
數據倉庫是分析系統的數據平臺,它從事務系統獲取數據,并做匯總、加工,為決策者提供決策的依據。比如,某銀行某分行一個月發生多少交易,該分行當前存款余額是多少。如果存款又多,消費交易又多,那么該地區就有必要設立ATM了。
顯然,銀行的交易量是巨大的,通常以百萬甚至千萬次來計算。事務系統是實時的,這就要求時效性,客戶存一筆錢需要幾十秒是無法忍受的,這就要求數據庫只能存儲很短一段時間的數據。而分析系統是事后的,它要提供關注時間段內所有的有效數據。這些數據是海量的,匯總計算起來也要慢一些,但是,只要能夠提供有效的分析數據就達到目的了。
數據倉庫,是在數據庫已經大量存在的情況下,為了進一步挖掘數據資源、為了決策需要而產生的,它決不是所謂的“大型數據庫”。
4、數據倉庫分層架構
按照數據流入流出的過程,數據倉庫架構可分為三層——源數據、數據倉庫、數據應用。
數據倉庫的數據來源于不同的源數據,并提供多樣的數據應用,數據自下而上流入數據倉庫后向上層開放應用,而數據倉庫只是中間集成化數據管理的一個平臺。
- 源數據層(ODS):?操作性數據(Operational Data Store) ,是作為數據庫到數據倉庫的一種過渡,ODS的數據結構一般與數據來源保持一致,而且ODS的數據周期一般比較短。ODS的數據為后一步的數據處理做準備。
- 數據倉庫層(DW):數據倉庫(Data Warehouse),是數據的歸宿,這里保持這所有的從ODS到來的數據,并長期報錯,而且這些數據不會被修改,DW層的數據應該是一致的、準確的、干凈的數據,即對源系統數據進行了清洗(去除了雜質)后的數據。
- 數據應用層(DA):數據應用(Data Application),為了特定的應用目的或應用范圍,而從數據倉庫中獨立出來的一部分數據,也可稱為部門數據或主題數據,該數據面向應用。如根據報表、專題分析需求而計算生成的數據。
???????5、數據倉庫之ETL
ETL,是英文Extract-Transform-Load的縮寫,用來描述將數據從來源端經過抽取(extract)、轉換(transform)、加載(load)至目的端的過程。ETL是將業務系統的數據經過抽取、清洗、轉換之后加載到數據倉庫的過程,目的是將企業中分散、零亂、標準不統一的數據整合到一起。
ETL是數據倉庫的流水線,也可以認為是數據倉庫的血液,它維系著數據倉庫中數據的新陳代謝,而數據倉庫日常的管理和維護工作的大部分精力就是保持ETL的正常和穩定。
- 📢博客主頁:https://lansonli.blog.csdn.net
- 📢歡迎點贊 👍 收藏 ?留言 📝 如有錯誤敬請指正!
- 📢本文由 Lansonli 原創,首發于 CSDN博客🙉
- 📢大數據系列文章會每天更新,停下休息的時候不要忘了別人還在奔跑,希望大家抓緊時間學習,全力奔赴更美好的生活?
總結
以上是生活随笔為你收集整理的深夜凌晨女朋友问什么是数据仓库,我的回答让她惊讶,然后发现。。。的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2021年大数据Hadoop(三十):H
- 下一篇: 2021年大数据Hive(一):