一、引言
基於大數據技術構建數據倉庫平臺,源於大數據技術本身的不成熟和普及度問題,以及輔助工具的缺失,註定了其實施過程與傳統數據倉庫的差異性,和更大的實施難度。本文針對大數據技術應用與數據倉庫類項目需求分析階段,需要完成的主要工作基於用戶需求分析說明書的文檔結構進行目錄式展現。如需瞭解更深層的細節,可以做專項技術交流和諮詢服務。
一、項目範圍的界定
沒有明確項目邊界的項目是一個不可控的項目,如果項目規劃階段就沒有界定明確的項目範圍,項目實施過程過程中必將陷入萬劫不復的境地,慎重慎重。基於大數據基於的數據倉庫項目,面臨技術和人員等方面的問題,主要包括下面幾個方面:
(1)大數據基礎平臺的成熟度尚不完善:主要是指基於Hive+Hadoop技術的缺陷,需要技術在逐步的完善中;
(2)大數據輔助工具化的缺失:主要針對數據定義,數據處理以及數據可視化管理工具的欠缺;
(3)大數據開發和管理人員技術能力的不成熟:熟悉大數據相關平臺管理和開發技術的人員的不足和技術層次參差不齊;
正是基於以上原因的考慮,導致大數據環境下的數據倉庫的實施相對於成熟的傳統關係型數據庫模式,將會面臨更大的壓力和更多的需要考慮的問題。項目邊界的界定主要需要考慮一下問題:
(1)業務邊界:都有哪些業務系統的數據需要接入到數據倉庫平臺。
(2)數據邊界:都有哪些業務數據需要接入數據倉庫平臺,具體的包括哪些表,表結構如何,表間關係如何(區別於傳統模式)。
(3)功能邊界:提供哪些功能,不提供哪些功能,必須明確界定,該部分詳見需求分析;
二、關鍵業務流程分析
業務流程主要考慮包括系統間數據交互的流程、傳輸模式和針對大數據倉庫本身涉及相關數據處理的流程兩大部分。系統間的數據交互流程和模式,決定了你的數據倉庫平臺的架構和設計,因此必須進行專項分析。數據倉庫本身需要考慮的問題包括以下幾個方面,在此製作目錄結構的展示:
2.1 歷史數據導入流程
2.2 增量數據導入流程
2.3 數據完整性校驗流程
2.4 數據批量導出流程
2.5 數據批量查詢流程
三、功能性需求-只做目錄結構的展示
3.1.歷史數據導入
3.1.1 XX系統數據
3.1.1.1 數據清單... 3
3.1.1.2 關聯規則... 3
3.1.1.3 界面... 3
3.1.1.4 輸入輸出... 3
3.1.1.5 處理邏輯... 3
3.1.1.6 異常處理... 3
3.2 增量數據導入
3.3 數據校驗
3.4 數據導出
3.5 數據查詢
四、非功能性需求
4.1 性能
4.2 安全性
4.3 可用性
...
五、接口需求
5.1 數據查詢接口
5.2 批量任務管理接口
5.3 數據導出接口
六、集羣需求
大數據技術自身的特點,決定項目的實施,必須考慮單獨的開發環境和生產環境,否則在後續的項目實施過程中,必將面測試不充分和性能無法測試的窘境,因此前期需求分析階段,必須根據數據規模和性能需求,構建單獨的開發環境和生產環境。
6.1開發環境
6.1.1 查詢服務器
6.1.2 命名服務器
6.1.3 數據服務器
6.2 生產環境
6.2.1 查詢服務器
6.2.2 命名服務器
6.2.3 數據服務器
七、其他
...
八、寫在後面的化
其實公共數據平臺的產品化設計的思想一直影響着我的思維模式,作爲數據倉庫,其實更多的是考慮規範的應用接口,工具化,但是現實情況確實逼良爲娼,無奈之舉。實施過程中即要考慮應用的開發,同時還需要考慮工具化的提煉,也許這纔是大數據落地實施真正的難度。提供統一的數據數據導入工具,數據可視化工具、數據校驗工具、數據導出工具和公共的數據查詢接口服務管理工具纔是大數據作爲數據倉庫發展的方向。也許這就是探索者的苦惱吧。未完待續....