丁 琳
SAP中國思愛普(北京)軟件系統有限公司,上海 201203
商務智能(Business Intelligence, BI)是企業利用數據倉庫(DW)、數據挖掘(DM)、在線分析處理(OLAP)和決策支持系統(DSS)等現代信息技術對企業經營過程中產生的大量結構化和非結構化業務數據和信息進行收集、整理、分析,以便輔助企業做出爭取決策,采取有效戰術行動,優化業務流程,全面提升企業績效的工具、方法和技術的統稱。借助商務智能這一手段,企業可以在市場日益變化,競爭愈加激烈,組織結構復雜,企業規模快速擴張龐大的商業環境之下,保持高效運營、正確決策、快速響應,實現企業從數據到信息、從信息到知識、從知識到利潤的轉化。
企業實施商務智能項目時,數據的采集和集成是通常遇到的問題。由于實施過程一般分階段分梯度進行,因此企業BI始終要面對業務流程隨市場環境趨勢不斷變化的現狀,系統架構始終處于不斷補充擴大的過程。
在企業內部隨著信息化的歷史變遷,從部門級應用,到各公司獨立應用,再到企業一體化應用,企業使用不同廠商、不同版本的各種管理軟件。如果說這種系統應用的廣度已經使人頭痛,更頭痛的是集團型企業各種信息系統的集成問題。如從數據集成到應用系統集成,再到集團型企業所面臨的人員集成、信息集成、流程集成、應用平臺集成等方面,涉及面越來越多,集成重點也愈來愈從技術走向業務系統。
與此同時,行業市場激烈的競爭環境,迫使企業不得不在應用系統逐步整合集中的進程中,同步進行大規模的企業范圍內的數據整合,以BI作為企業戰略重要支撐。那么企業BI必然率先解決數據驅動的根本,即解決數據的獲取、轉換和整合等問題。
目前,全球各大軟件廠商提供的商務智能解決方案均是將業務應用的操作型關系數據庫作為商務智能數據倉庫或集市的ETL數據源,這種解決方案旨在將業務流程和操作與業務分析和查詢分離,應用組合各司其職合理架構。因此,市面上大部分BI產品本身只對數據倉庫或集市或OLAP進行單向提取和展現操作,也就是“只讀”的操作,展現層不提供大量和頻繁的數據寫操作。試想一旦BI產品具備數據寫處理,BI的產品定位和架構界限劃分將變得模糊不清,在實際應用中也難免出現業務需求匹配解決方案時的定位混淆問題。即使市面上有少數BI產品具備訪問權限可控的“回寫、轉存”功能,啟用功能時勢必要謹慎考慮對數據倉庫或OLAP多維分析的數據更新頻率和重構立方體的工作量問題,事實上這類BI產品的“寫處理”能力非常局限,一般僅處理單表中度量型或備注型的字段更新,也不具備工作流和規則引擎等基本流程控制功能。
筆者提出,在商務智能體系架構中增加構建一層數據采集平臺,作為核心業務應用組合架構中的重要補充來源,從而解決企業快速獲取非系統性數據來源或外部來源數據導入系統的問題,以保證企業數據資產完整性以及信息充分有效性,實現商務智能支撐企業決策的要求。
數據采集情況復雜,方式種類繁多。較為常見的情況是業務應用系統之間跨多數據庫,結構化、半結構化和非結構化的數據源,以及手工填報錄入和導入源文件等。簡單的采集方式可以是網頁手工錄入數據,掃描條形碼,自動化定時數據抽取,修正或者補錄過程等方式,最終是為數據存儲或數據分析提供基礎內容。可見無論何種情況方式,數據采集都包括了數據源收集、識別、選取和存儲等環節,是一個從目標處理到完成輸入輸出的復雜過程。
商務智能的數據采集平臺包括對業務數據、協同數據、公用資源以及公司各級下屬單位或部門的數據進行采集。數據采集工作主要通過數據采集適配器、網頁在線數據填報、客戶端數據上報、以及后臺批量數據導入等方式,迅速地從生產數據庫、文件系統采集到數據,存儲到采集數據庫及文件系統,并盡量降低給生產數據庫帶來的影響。
數據采集平臺要求數據的準確一致、格式符合BI分析使用,因此設計了數據上報和審核的業務流程,系統層次結構和流程設計如下:
審批層:由具體填報人員以網頁在線填報或客戶端填報方式,將數據錄入填報系統中(系統自動將數據標示為狀態寫為提交)。
填報層:各分支結構審核人員將在系統中對數據審核(系統中只顯示待審核數據),如數據符合要求則通過審核(系統將標志位改為審核),否則退回(系統將標志位改為提交)。
ETL層:由系統自動通過ETL工具將數據寫入公司總部采集平臺的數據庫,ETL過程需根據業務需求具體設計。
2)數據存儲分為兩層級
各下屬單位數據存儲:各個下屬單位有各自數據庫,存儲在線填報系統數據。
總部數據中心:總部采集平臺數據庫,存儲各下屬單位數據。(審核后數據)。
3)數據采集內容
數據采集平臺為數據集成和整合應用提供數據基礎,數據采集覆蓋整個醫藥企業應用系統的業務數據,采集數據主要用于為主數據管理及商務智能系統提供數據來源。通過數據采集平臺,可以將公司商務智能分析需要的各類業務分析主題的維度和事實都導入到數據倉庫的ODS數據區中。
1)數據采集適配器
數據采集適配器是利用Web Service提供服務,自動將需要采集的各級數據中心的應用系統數據源讀入中間暫存數據集,然后從數據集將已更改數據寫入采集平臺數據庫中。
適配器方式數據采集過程如下:
適配器客戶端發起連接請求;
服務端應答,通過SSL與之建立連接;
適配器客戶端發送數據;
服務端接收數據,并在接收完畢后反饋接收狀態;
服務端識別數據類型和數據格式的標記,根據類型格式標記從規則引擎中取得數據處理規則對采集到的數據內容進行校驗;
將校驗信息存入信息反饋庫中,校驗通過的數據裝載采集數據庫庫,校驗失敗的缺陷信息到信息反饋庫,不進行載入處理。
2)網頁在線數據填報
網頁數據采集是B/S架構部署的人工在線填報方式,文本信息通過HTML表單形式進行填報,Excel或XML文件以附件的形式上傳導入數據庫,審批流程控制和工作流由WebService提供服務,數據校驗規則在瀏覽器實現,數據復雜計算規則在數據庫后臺批處理實現。
數據填報采集流程如下:
用戶登陸網頁在線填報頁面;
根據模板進行數據填報,并提交數據;
服務端識別數據類型和數據格式的標記,根據類型格式標記從規則引擎中取得數據處理規則對采集到的數據內容進行校驗;
將校驗信息存入信息反饋庫中,校驗通過的數據裝載采集數據庫庫,校驗失敗的缺陷信息到信息反饋庫,不進行載入處理。
3)客戶端數據上報
數據填報客戶端是C/S架構部署在用戶終端的數據收集和報送的軟件工具。
客戶端數據采集過程如下:
客戶端發起連接請求;
服務端應答,驗證客戶端的用戶權限,通過SSL與之建立連接;
客戶端發送數據;
服務端接收數據,并在接收完畢后反饋接收狀態;
服務端識別數據類型和數據格式的標記,根據類型格式標記從規則引擎中取得數據處理規則對采集到的數據內容進行校驗;
將校驗信息存入信息反饋庫中,校驗通過的數據裝載采集數據庫庫,校驗失敗的缺陷信息到信息反饋庫,不進行載入處理。
采用客戶端填報數據有如下優點:
可以在線填寫數據,也可以離線填寫數據,本地存儲,在線同步;
可以將校驗規則預置到客戶端,減少缺陷數據的產生;
可以將報送失敗的數據重新上報;
可以查詢上報批次數據;
通過客戶端的更新功能可以自動獲取服務端的最新業務規則以及報送狀態信息,可以進行客戶端桌面數據庫中數據的備份,查詢統計等操作。
4)后臺批量數據導入
批量導入方式提供后臺批量數據進行集中入庫的功能,系統管理人員將符合要求的數據上傳服務器系統指定目錄即可完成導入工作。
批量導入的數據獲取過程:
系統管理人員將上報數據方上報的數據組織成符合要求的數據文件,并存儲在離線介質上。
服務器端得到存儲介質的離線數據進行校驗及導入操作。
將導入結果狀態記錄在信息反饋庫中。
數據采集平臺,對業務應用系統相互孤立,軟件產品系統不兼容,企業應用系統大整合尚未完成的企業,也能盡早的實施商務智能應用,通過中間的數據采集處理,率先完成數據整合,有助于解決企業在信息系統建設過程中的數據不集中不完整等問題,作為商務智能底層架構的補充數據來源,是企業實施商務智能應用的基礎。
[1]W.H.Inmon Building the Data Warehouse,機械工業出版社,2003,3.
[2]余長慧,潘和平.商務智能及其核心技術.計算機應用研究,2006(9).
[3]趙青,余志毅,趙洪明.商務智能在企業管理應用中的障礙及策略.科技創業月刊,2008(7).
[4]夏國恩,金煒東,張葛祥.商務智能在中國的現狀和發展.科技進步與對策,2012(2).