數據中臺是聚合和治理跨域數據,將數據抽象封裝成服務,提供給前臺以業務價值的邏輯概念。前端
數據中臺是一套可持續「讓企業的數據用起來」的機制,一種戰略選擇和組織形式,是依據企業特有的業務模式和組織架構,經過有形的產品和實施方法論支撐,構建一套持續不斷把數據變成資產並服務於業務的機制。sql
數據中臺鏈接數據前臺和後臺,突破數據侷限,爲企業提供更靈活、高效、低成本的數據分析挖掘服務,避免企業爲知足具體某部門某種數據分析需求而投放大量高成本、重複性的數據開發成本。數據庫
數據中臺是指經過數據技術,對海量數據進行採集、計算、存儲、加工,同時統一標準和口徑。數據中臺把數據統一以後,會造成標準數據,再進行存儲,造成大數據資產層,進而爲客戶提供高效服務。跨域
數據中臺,包括平臺、工具、數據、組織、流程、規範等一切與企業數據資產如何用起來所相關的。安全
能夠看出,數據中臺是解決如何用好數據的問題,目前還缺少一個標準,而說到數據中臺必定會說起大數據,而大數據又是由數據倉庫發展起來的。網絡
爲企業全部決策制定過程,提供全部系統數據支持的戰略集合數據結構
- 面向主題
操做型數據庫的數據組織面向事務處理任務,各個業務系統之間各自分離,而數據倉庫中的數據是按照必定的主題域進行組織。架構
主題是一個抽象的概念,是數據歸類的標準,是指用戶使用數據倉庫進行決策時所關心的重點方面,一個主題一般與多個操做型信息系統相關。每個主題基本對應一個宏觀的分析領域。併發
例如,銀行的數據倉庫的主題:客戶運維
客戶數據來源:從銀行儲蓄數據庫、信用卡數據庫、貸款數據庫等幾個數據庫中抽取的數據整理而成。這些客戶信息有多是一致的,也多是不一致的,這些信息須要統一整合才能完總體現客戶。
- 集成
面向事務處理的操做型數據庫一般與某些特定的應用相關,數據庫之間相互獨立,而且每每是異構的。而數據倉庫中的數據是在對原有分散的數據庫數據抽取、清理的基礎上通過系統加工、彙總和整理獲得的,必須消除源數據中的不一致性,以保證數據倉庫內的信息是關於整個企業的一致的全局信息。
具體以下:
1:數據進入數據倉庫後、使用以前,必須通過加工與集成。
2:對不一樣的數據來源進行統一數據結構和編碼。統一原始數 據中的全部矛盾之處,如字段的同名異義,異名同義,單位不統一,字長不一致等。
3:將原始數據結構作一個從面向應用到面向主題的大轉變。
- 非易失即相對穩定的
操做型數據庫中的數據一般實時更新,數據根據須要及時發生變化。數據倉庫的數據主要供企業決策分析之用,所涉及的數據操做主要是數據查詢,一旦某個數據進入數據倉庫之後,通常狀況下將被長期保留,也就是數據倉庫中通常有大量的查詢操做,但修改和刪除操做不多,一般只須要按期的加載、刷新。
數據倉庫中包括了大量的歷史數據。
數據經集成進入數據倉庫後是極少或根本不更新的。
- 隨時間變化即反映歷史變化
操做型數據庫主要關心當前某一個時間段內的數據,而數據倉庫中的數據一般包含歷史信息,系統記錄了企業從過去某一時點(如開始應用數據倉庫的時點)到目前的各個階段的信息,經過這些信息,能夠對企業的發展歷程和將來趨勢作出定量分析和預測。企業數據倉庫的建設,是以現有企業業務系統和大量業務數據的積累爲基礎。數據倉庫不是靜態的概念,只有把信息及時交給須要這些信息的使用者,供他們作出改善其業務經營的決策,信息才能發揮做用,信息纔有意義。而把信息加以整理概括和重組,並及時提供給相應的管理決策人員,是數據倉庫的根本任務。所以,從產業界的角度看,數據倉庫建設是一個工程,是一個過程
數據倉庫內的數據時限通常在5-10年以上,甚至永不刪除,這些數據的鍵碼都包含時間項,標明數據的歷史時期,方便作時間趨勢分析。
經過對數據倉庫中數據的分析,能夠幫助企業,改進業務流程、控制、成本、提升產品質量等
防止煙囪式開發,減小重複開發,開發通用中間層數據,減小重複計算;
將複雜問題簡單化,將複雜任務的多個步驟分解到各個層次中,每一層只處理較少的步驟,使單個任務更容易理解;
可進行數據血緣追蹤,便於快速定位問題;
整個數據層次清晰,每一個層次的數據都有職責定位,便於使用和理解。
總結:數據倉庫,即爲企業數據的模型沉澱,爲了能更快的發展大數據應用,提供可靠的模型來快速迭代。本文也主要爲了講解數據倉庫
大數據平臺則是指以處理海量數據存儲、計算及流數據實時計算等場景爲主的一套基礎設施,包括了統一的數據採集中心、數據計算和存儲中心、數據治理中心、運維管控中心、開放共享中心和應用中心。
大數據平臺的建設出發點是節約投資下降成本,但實際上不管從硬件投資仍是從軟件開發上都遠遠超過數據倉庫的建設,大量的硬件和各類開源技術的組合,增長了研發的難度、調測部署的週期、運維的複雜度,人力上的投入已經是最初的幾倍;還有不少技術上的困難也非一朝一夕可以突破。
首先是數據的應用問題,不管是數據倉庫仍是大數據平臺,裏面包含了接口層數據、存儲層數據、輕度彙總層、重度彙總層、模型層數據、報表層數據等等,各類各樣的表有成千上萬,這些表有的是中間處理過程,有些是一次性的報表,不一樣表之間的數據一致性和口徑也會不一樣,並且不一樣的表不一樣的字段對數據安全要求級別也不一樣。
此外還要考慮多租戶的資源安全管理,如何讓內部開發者快速獲取所需的數據資產目錄,如何閱讀相關數據的前因後果,如何快速的實現開發,這些在大數據平臺建設初期沒有考慮周全。
另一個問題是對外應用,隨着大數據平臺的應用建設,每個對外應用都採用單一的數據庫加單一應用建設模式,獨立考慮網絡安全、數據安全、共享安全,逐漸又走向了煙囪似的開發道路。
總結:大數據平臺,即爲數據一站式服務,提供可視化的數據展現,提取,計算任務安排,資源管理,數據治理,安全措施,共享應用等等。
總結:厚平臺,大中臺,小前臺;沒有基礎厚實笨重的大數據平臺,是不可能構建數據能力強大、功能強大的數據中臺的;沒有大數據中臺,要迅速搭建小快靈的小前臺也只是理想化的。
你們應該已經意識到這個問題:既然分析型數據庫中的操做都是查詢,所以也就不須要嚴格知足完整性/參照性約束以及範式設計要求,而這些卻正是分析型數據庫精華所在。這樣的狀況下再將它歸爲數據庫會很容易引發你們混淆,畢竟在絕大多數人內心數據庫是能夠關係型數據庫畫上等號的。
事實/維度 | 時間 | 用戶 | 地區 | 商品 | 優惠卷 | 活動 | 編碼 | 度量 |
---|---|---|---|---|---|---|---|---|
訂單 | √ | √ | √ | √ | 件數/金額 | |||
訂單詳情 | √ | √ | √ | 件數/金額 | ||||
支付 | √ | √ | 次數/金額 | |||||
加入購物車 | √ | √ | √ | 件數/金額 | ||||
收藏 | √ | √ | √ | 個數 | ||||
評價 | √ | √ | √ | 個數 | ||||
退款 | √ | √ | √ | 件數/金額 | ||||
優惠卷領用 | √ | √ | √ | 個數 |
對系統各大主題指標分別進行分析。
數據處理大體能夠分紅兩大類:
聯機事務處理OLTP(on-line transaction processing):是傳統的關係型數據庫的主要應用,主要是基本的、平常的事務處理,例如銀行交易。系統強調數據庫內存效率,強調內存各類指標的命令率,強調綁定變量,強調併發操做。
聯機分析處理OLAP(On-Line Analytical Processing):是數據倉庫系統的主要應用,支持複雜的分析操做,側重決策支持,而且提供直觀易懂的查詢結果。 系統則強調數據分析,強調SQL執行市場,強調磁盤I/O,強調分區等。
對比內容 | 操做型數據庫(OLTP) | 分析型數據庫(OLAP) |
---|---|---|
數據內容 | 當前值 | 歷史的、存檔的、概括的、計算的數據 |
數據目標 | 面向業務操做程序,重複處理 | 面向主題域,分析應用,支持決策 |
數據特性 | 動態變化,按字段更新 | 靜態、不能直接更新,只能定時添加、刷新 |
數據結構 | 高度結構化、複雜,適合操做計算 | 簡單,適合分析 |
使用頻率 | 高 | 中到低 |
數據訪問量 | 每一個事務只訪問少許記錄 | 有的事務可能須要訪問大量記錄 |
對響應時間的要求 | 以秒爲單位計算 | 以秒、分鐘、甚至小時爲計算單位 |
對比屬性 | OLTP | OLAP |
---|---|---|
表明 | Mysql | Hive |
讀特性 | 每次查詢只返回少許數據 | 對大量數據進行彙總 |
寫特性 | 隨機、低延遲寫入用戶的操做 | 批量導入 |
用戶 | 操做人員 | 決策人員 |
DB設計 | 面向應用 | 面向主題 |
數據 | 當前的,最新的細節,二維表 | 歷史的,彙集的,多維表 |
工做單位 | 事務性保證 | 複雜查詢 |
用戶數 | 上千個 | 上百萬個 |
DB大小 | 100MB-GB | 100GB-TB以上 |
時間要求 | 具備實時性 | 對時間的要求不嚴格 |
主要應用 | 數據庫:WEB項目 | 數據倉庫:分析師,挖掘師 |
對比內容 | 操做型數據庫(OLTP) | 分析型數據庫(OLAP) |
---|---|---|
數據時間範圍差異 | 只會存放必定天數的數據 | 存放的則是數年內的數據 |
數據細節層次差異 | 存放的主要是細節數據 也有彙總需求,但彙總數據自己不存儲而只存儲其生成公式。 這是由於操做型數據是動態變化的,所以彙總數據會在每次查詢時動態生成。 |
存放的既有細節數據,又有彙總數據,對於用戶來講,重點關注的是彙總數據部分。 由於彙總數據比較穩定不會發生改變,並且其計算量也比較大(由於時間跨度大),所以它的彙總數據可考慮事先計算好,以免重複計算。 |
數據時間表示差異 | 一般反映的是現實世界的當前狀態 | 既有當前狀態,還有過去各時刻的快照。 能夠綜合全部快照對各個歷史階段進行統計分析 |
對比內容 | 操做型數據庫(OLTP) | 分析型數據庫(OLAP) |
---|---|---|
數據更新差異 | 容許用戶進行增,刪,改,查 | 規範是隻能進行查詢 |
數據冗餘差異 | 減小數據冗餘,避免更新異常 | 沒有更新操做。所以,減小數據冗餘也就沒那麼重要了 |
對比內容 | 操做型數據庫(OLTP) | 分析型數據庫(OLAP) |
---|---|---|
數據讀者差異 | 使用者是業務環境內的各個角色,如用戶,商家,進貨商等 | 只被少許用戶(高級管理者)用來作綜合性決策 |
數據定位差異 | 是爲了支撐具體業務建立的,所以也被稱爲"面向應用型數據庫" | 是針對各特定業務主題域的分析任務建立的,所以也被稱爲"面向主題型數據庫" |
OLAP有多種實現方法,根據存儲數據的方式不一樣能夠分爲ROLAP、MOLAP、HOLAP
名稱 | 描述 | 細節數據存儲位置 | 聚合後的數據存儲位置 |
---|---|---|---|
ROLAP(Relational OLAP) | 基於關係數據庫的OLAP實現 | 關係型數據庫 | 關係型數據庫 |
MOLAP(Multidimensional OLAP) | 基於多維數據組織的OLAP實現 | 數據立方體 | 數據立方體 |
HOLAP(Hybrid OLAP) | 基於混合數據組織的OLAP實現 | 關係型數據庫 | 數據立方體 |
事實表用於正確的記錄既定的已經發生的事實,經常使用於存儲ID和度量值,各類維度外鍵
事實表中的每行數據表明一個業務事件(下單、支付、退款、評價等)。「事實」這 個術語表示的是業務事件的度量值(可統計次數、個數、件數、金額等),例如,訂單事件中的下單金額。
每個事實表的行包括:具備可加性的數值型的度量值、與維表相鏈接的外鍵、一般具 有兩個和兩個以上的外鍵、外鍵之間表示維表之間多對多的關係。
行數相對較多。(對比維度表)
列數較少。(不是絕對)
變化較快。(新增修改操做較多)
動態表示的,動詞性質的表。(以下單,優惠卷領用)
事實表導入策略通常有三種劃分:事務型事實表,週期型快照事實表,累積型快照事實表
劃分/比較點 | 事務狀況 | 導入策略 |
---|---|---|
事務型事實表 | 以每一個事務或事件爲單位,例如一個銷售訂單記錄,一筆支付記錄等,做爲 事實表裏的一行數據。一旦事務被提交,事實表數據被插入,數據就再也不進 行更改,其更新方式爲增量更新 |
天天導入新增 |
週期型快照事實表 | 週期型快照事實表中不會保留全部數據,只保留固定時間間隔的數據,例如 天天或者每個月的銷售額,或每個月的帳戶餘額等 |
每日全量 |
累積型快照事實表 | 累計快照事實表用於跟蹤業務事實的變化。例如,數據倉庫中可能須要累積 或者存儲訂單從下訂單開始,到訂單商品被打包、運輸、和簽收的各個業務 階段的時間點數據來跟蹤 訂單聲明週期的進展狀況。當這個業務過程進行時 ,事實表的記錄也要不斷更新 |
天天導入新增及變化 |