[摘要]數據湖是一個集中式存儲庫,允許以任意規模存儲所有結構化和非結構化數據,具有改造和分析數據處理能力。來自不同來源的詳細原始的數據被加載到一個綜合信息庫,可以看到提供給用戶分析的任何數據。主要思想是對企業中的所有數據進行統一存儲,從原始數據轉換為用於報告、可視化、分析和機器學習等各種任務的轉換數據。數據倉庫是一個優化的數據庫,用於分析來自事務系統和業務線應用程序的關系數據。數據倉庫技術需要事先定義數據結構和數據模式(Schema)以優化快速SQL查詢,其中結果通常用於操作報告和分析。數據經過了清理、豐富和轉換,因此可以充當用戶可信任的"單一信息源”。本文通過具體項目億信和河北省科技創新大數據平台分析數據湖和數據倉庫的應用
[關鍵詞]數據湖,數據倉庫。
一、數據湖與數據倉庫的比較
數據湖能夠同時存儲來自業務線應用程序的關系數據,以及來自移動應用程序、物聯網設備和社交媒體的非關系數據。在進行數據捕獲時,無須定義數據結構或數據模式(Schema)。數據湖支持用戶對數據使用不同類型的分析(如SQL查詢、大數據分析、全文搜索、實時分析和機器學習等),為企業智能決策提供支撐。主要數據來源、數據模式轉換時機、數據存儲成本、數據質量、面對用戶和主要支撐應用類型等六個方面對數據湖技術和數據倉庫技術進行比較:
1.主要數據來源:數據湖來自物聯網設備、互聯網、移動應用程序、社交媒體和企業應用程序的結構化、半結構化和非結構化數據;數據倉庫來自事務系統、運營數據庫和業務線應用程序的結構化數據。
2.數據模式轉換時機:數據湖:數據進入數據湖時不進行模式轉換,在進行實際數據分析時才講行模式轉換;
數據倉庫:在進入數據倉庫之前(需要提前設計數據倉庫的Schema)
3.數據存儲成本:數據湖:通常基於非關系型數據庫,數據存儲成本相對較低 數據倉庫:通常基於關系型數據庫,數據存儲成本高。
4.數據質量:數據湖:原始的、未經處理的數據。數據倉庫:可作為重要事實依據的高質量數據。
5.面對用戶:數據湖:業務分析師、應用開發人員和數據科學家。數據倉庫:業務分析師。
6.主要支撐應用類型:數據湖:機器學習、預測分析、數據發現和分析。數據倉庫:批處理報告、商務智能(BI)和數據可視化
二、 河北省科技創新大數據綜合服務平台是一個以科技資源數據為基礎,應用現代信息技術搭建的,通過網絡面向用戶服務的信息系統平台。平台上系統概要體系架構設計:把放在系統資源層的分散存放的數據庫數據放入緩沖管理子系統,在緩沖區中進行數據抽取、清洗、轉換、入庫等操作。然后在數據倉庫管理系統中進行數據的整合,最后對整合后的數據進行可視化展示。其中子系統的划分采用過程/數據類法過程/數據類法:根據數據模型設計中得到的數據類以及功能需求分析中建立企業模型的業務過程來划分子系統。過程:對應用戶功能需求分析中得到的功能。數據類:對應信息需求分析中得到的信息。子系統有:緩沖層管理子系統,數據倉庫管理子系統。
三、系統中用數據湖技術數據治理
數據湖最主要的元素是三大元素:一個是Amazon S3/Glacier,一個是AWS Glue和Amazon Athena,一個是AWS Lake Formation。最核心的組件是Amazon S3,它可以存儲二進位為基礎的任何信息,包含結構化和非結構化的數據,例如:企業信息系統MES、SRM等系統中的關系型數據,從手機、攝像頭拍來的照片、音視頻文件,從火力發電機等各種設備產生的數據文件等。借助Amazon S3,可以通過經濟高效的方式構建和擴展任何規模的數據湖。AWS Glue服務,還是可以提供數據目錄服務的功能。因為數據都存在數據湖里面,在這個過程中,要對這些數據打上標簽,把它做分類的工作。Glue就像爬蟲一樣對數據湖里的海量數據,進行自動爬取,生成數據目錄的功能。而Amazon Athena是一種交互式查詢服務,讓您能夠輕松使用標准 SQL 直接分析Amazon S3中的數據。AWS Lake Formation:把建立數據湖操作的步驟通過工具自動化管理起來,幫助企業在短短的幾天的時間完成數據湖的建設工作。
1.數據庫類型接入
首先對數據庫類型接入,包括主流的關系型數據庫以及分布式數據庫,能將業務系統數據對接到平台中,提供后續建模分析使用,支持Oracle、Mysql、Sql Server、DB2、Sybase、達夢 DM、PetaBase、Impala、GreenPlum、 Hive、Spark SQL、postgresql 、FusionInsight、Gauss DB200、Vertica、Transwarp、Informix、 易鯨捷 EsgynDB 等,同時也支持通過接入其他數據庫驅動的方式自定義數據庫。導入各種類型的數據庫及excel、txt、csv、db等文件
2、數據的整合
使用可靠的 ETL 過程、過程流發布和智能的調度管理。ETL 過程流編輯器是以圖形化的方式完成 ETL 過程的前驅后繼關系和調度順序 的定義。ETL 過程依賴關系分為強制依賴和非強制依賴,強制依賴是指作業之間有着 業務上的依賴關系,前置作業的輸出做為后置作業的輸入,只有前置作業執行完成后, 才能進行后置作業的調度,而非強制依賴是指作業之間沒有任何的業務依賴關系,為了管理的需要將一組作業進行序列化的處理,在前置作業執行出錯時候,可以選擇跳 過進入到下一個作業的執行中去。
3.數據建模
有引用庫表創建主題表、SQL 創建主題表、虛擬主題表、自定義創建主題表,以及通過 ETL 創建主題表等方式。
4.數據分析
數據分析使用戶能夠從大量的數據中發現有價值或者感興趣的信息,這些功能可以簡單的划分為六類:
(1)報表分析,用戶通過系統提供的可視化設計工具,定義各種分析報表、查詢模板、統計圖模板等,在需要的時候再刷新分析結果。
(2)敏捷分析,系統提供靈活方便的操作界面,允許用戶任意選擇指標、維度和過濾條件等,快速生成多維分析表、統計圖形等。
(3)報告分析,通過將用戶關心的圖表結果匯集在報告中,便於用戶演示匯報。
(4)酷屏分析,可靈活自由地制作和展現酷炫的圖表,方便開發和實施人員快捷地完成頁面需求,支持在線編輯 html/js/css 代碼完成頁面效果制作。
(5)移動分析,分別可通過瀏覽器、手機、平板電腦等多途徑,對自己權限范圍內的報表進行瀏覽訪問。ABI 提供了大量的功能,可以很好的實現這幾類數據分析展現需求,並且操作簡潔。