袁文禮
摘要:數(shù)據(jù)倉庫技術的發(fā)展為增強科技數(shù)據(jù)的管理和共享共用能力提供了新思路,該文提出了一個基于數(shù)據(jù)倉庫型中央數(shù)據(jù)庫體系結(jié)構的科技數(shù)據(jù)管理系統(tǒng)方案,并探討了各模塊的實現(xiàn)以及系統(tǒng)的主要功能。
關鍵詞:數(shù)據(jù)倉庫 ; 科技數(shù)據(jù) ; 中央數(shù)據(jù)庫 ; 數(shù)據(jù)集成
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2014)10-2192-03
Abstract:The development of data warehouse technology supplied a new idea to enhancing the ability to manage and share the science&technology data. This paper proposed a scheme of science&technology data management system based on center database architecture of data warehouse, and discussed the module implementation and main features of the system.
Key words:data warehouse; science & technology data; central database; data integration
1 概述
科技數(shù)據(jù)近年來呈現(xiàn)出數(shù)據(jù)量迅速增長、作用日趨重要的特點,科技數(shù)據(jù)信息的共享為科技創(chuàng)新和科技成果產(chǎn)業(yè)化作出重要貢獻??萍蓟A條件平臺建設能夠有效的改變分散在各行業(yè)、各高校及科研院所的科技資源獨占模式,加速最新科技成果的產(chǎn)業(yè)擴散和應用??萍紨?shù)據(jù)管理系統(tǒng)作為科技基礎條件建設的重要組成部分,通過運用先進的網(wǎng)絡技術和數(shù)據(jù)庫技術,加快科技基礎數(shù)據(jù)的數(shù)字化進程,實現(xiàn)數(shù)據(jù)采集、加工、保存的標準化、規(guī)范化,增強科技數(shù)據(jù)的管理和共享共用能力。
2 數(shù)據(jù)倉庫簡介
數(shù)據(jù)倉庫是決策支持系統(tǒng)機制和聯(lián)機分析應用數(shù)據(jù)源的結(jié)構化數(shù)據(jù)環(huán)境,是一個面向主題的、集成的、非易失的且隨時間變化的數(shù)據(jù)集合得到,用來支持管理人員的決策[1]。它包含一系列分析所需數(shù)據(jù),并且應該包含處理數(shù)據(jù)所需的程序[2]。
數(shù)據(jù)倉庫的體系結(jié)構[3]由三部分組成:綜合信息集成服務平臺,集成后的數(shù)據(jù)倉庫,數(shù)據(jù)集成機制。
3 數(shù)據(jù)倉庫型中央數(shù)據(jù)庫
中央數(shù)據(jù)庫所采用的數(shù)據(jù)倉庫技術要點如下:
1) 性能上更偏重數(shù)據(jù)的聯(lián)機分析。聯(lián)機分析和事務處理對系統(tǒng)的要求不同,即使是同一個數(shù)據(jù)庫,它們在理論上都難以做到兩全。一般業(yè)務型數(shù)據(jù)庫中,密集的數(shù)據(jù)更新處理性能和系統(tǒng)的可靠性是所有聯(lián)機事務處理必須強調(diào)的,卻并不強調(diào)數(shù)據(jù)查詢的方便與快捷[4]??萍紨?shù)據(jù)管理系統(tǒng)強調(diào)數(shù)據(jù)的分析利用,因此采用數(shù)據(jù)倉庫型中央數(shù)據(jù)庫。
2) 數(shù)據(jù)倉庫技術及動態(tài)數(shù)據(jù)接口解決從數(shù)據(jù)庫中獲取信息的問題。數(shù)據(jù)倉庫異構數(shù)據(jù)源的謀略是由幾個異構數(shù)據(jù)源的數(shù)據(jù)副本構成。按照一定的要求,進行預處理、轉(zhuǎn)換,以符合數(shù)據(jù)倉庫的模式,并存儲到數(shù)據(jù)倉庫中,讓用戶感覺像在使用普通的數(shù)據(jù)庫一般。
3) 多種數(shù)據(jù)資源的集成:數(shù)據(jù)庫、Excel數(shù)據(jù)、文本文件等。除了訪問傳統(tǒng)的RDBMS(關系型數(shù)據(jù)庫)外,還可以從其他地方獲取數(shù)據(jù),比如從用戶所持有的Excel 數(shù)據(jù)和文本文件中??梢栽谕粋€報表上,制成從數(shù)據(jù)庫得到的實時數(shù)據(jù)和Excel的人工數(shù)據(jù)等,從而提高數(shù)據(jù)的利用率。
4) 支持從數(shù)據(jù)倉庫中提取數(shù)據(jù),構筑成云平臺上的數(shù)據(jù)中心,進行多維度的數(shù)據(jù)加工利用。數(shù)據(jù)倉庫是面對整個機構的數(shù)據(jù)應用,而構筑數(shù)據(jù)中心是針對各個部門的信息應用。數(shù)據(jù)中心的數(shù)據(jù)是按部門的不同需要從數(shù)據(jù)倉庫中抽取,并進行加工處理而成。數(shù)據(jù)中心構筑工具軟件能夠提供從數(shù)據(jù)倉庫自動進行數(shù)據(jù)抽出、變換、加載(ETL,Extract/Transform/Load)功能,可大幅提高數(shù)據(jù)分析和利用的效率[5]。
數(shù)據(jù)倉庫型中央數(shù)據(jù)庫的設計如圖1所示。
4 科技數(shù)據(jù)管理系統(tǒng)的實現(xiàn)
4.1 中央數(shù)據(jù)庫外部接口的實現(xiàn)
中央數(shù)據(jù)庫是本平臺真正用來運作的數(shù)據(jù)庫,用途包括數(shù)學模型分析計算、業(yè)務運行、統(tǒng)計報表等。各接口數(shù)據(jù)庫的交換數(shù)據(jù)經(jīng)過動態(tài)數(shù)據(jù)接口軟件的加工整理,以統(tǒng)一的格式進入中央數(shù)據(jù)庫。平臺運行過程中得到的數(shù)據(jù),又會有選擇性地從中央數(shù)據(jù)庫輸出到接口數(shù)據(jù)庫中,供外部系統(tǒng)使用。如圖2。
為了最大限度地兼容各地區(qū)的外部系統(tǒng),減少接口開發(fā)、部署的難度,本方案采用簡單、通用的數(shù)據(jù)庫接口,包括3種:MySQL數(shù)據(jù)庫接口、ODBC通用接口、JDBC通用接口。只要定義好接口數(shù)據(jù)庫的表格式,外部系統(tǒng)就可直接訪問接口數(shù)據(jù)庫,實現(xiàn)數(shù)據(jù)交換。
為適應業(yè)務數(shù)據(jù)的多樣性,接口數(shù)據(jù)庫提供的數(shù)據(jù)接口可以根據(jù)業(yè)務需要進行二次開發(fā),從而使數(shù)據(jù)接口能夠同時支持自動數(shù)據(jù)導入導出、人工數(shù)據(jù)導入導出和手工錄入。為保障中央數(shù)據(jù)庫的業(yè)務數(shù)據(jù)統(tǒng)一性和安全性,中央數(shù)據(jù)庫不直接對外部開放,所有數(shù)據(jù)轉(zhuǎn)換問題都統(tǒng)一在數(shù)據(jù)接口處解決,不帶入中央數(shù)據(jù)庫。
4.2 中央數(shù)據(jù)庫內(nèi)部數(shù)據(jù)表的實現(xiàn)
中央數(shù)據(jù)庫的內(nèi)部數(shù)據(jù)表分層級實現(xiàn),分為3個層次:初級數(shù)據(jù)表、次級數(shù)據(jù)表以及高級數(shù)據(jù)表,3層不同類型的數(shù)據(jù)均可用于信息系統(tǒng)的查詢、下載、圖表展示。其基本體系結(jié)構如圖3所示。
1) 初級數(shù)據(jù)表:保存基礎數(shù)據(jù),主要由數(shù)據(jù)接口收集各種原始數(shù)據(jù)而形成。
2) 次級數(shù)據(jù)表:保存集成數(shù)據(jù),是對原始數(shù)據(jù)進行融合加工而形成。
3) 高級數(shù)據(jù)表:保存解析數(shù)據(jù),是對所有數(shù)據(jù)作統(tǒng)計分析得到的計算結(jié)果。
4.3 業(yè)務應用層的實現(xiàn)
在建立云計算平臺和中央數(shù)據(jù)庫的基礎上,科技數(shù)據(jù)管理系統(tǒng)的功能主要由業(yè)務層的虛擬機信息管理系統(tǒng)來完成。該信息系統(tǒng)既要能夠靈活地快速適應日后的各種科技數(shù)據(jù)格式、形態(tài)發(fā)展變化,不必重新開發(fā)系統(tǒng),又要保持簡單易用,不會因為設計過于復雜繁瑣而被淘汰。
根據(jù)軟件工業(yè)化的發(fā)展思路,采用一種生產(chǎn)流水線方式的軟件自動生成方法,最大限度地由流水線自動生成軟件程序編碼,無須程序員的人工編程,從而提高開發(fā)效率和質(zhì)量,并且降低對軟件開發(fā)者的要求。軟件自動生成系統(tǒng)包括:
1) 一個通用信息系統(tǒng)安全基礎模塊。包含信息安全防護、帳號權限管理、信息管理系統(tǒng)框架、數(shù)據(jù)查増刪改操作等基本功能。
2) 一個元數(shù)據(jù)庫設計模塊。支持用戶需求分析、系統(tǒng)設計方面的功能,可以把各種設計信息(例如數(shù)據(jù)字典等)保存在元數(shù)據(jù)庫中。只要有元數(shù)據(jù)庫的內(nèi)容,軟件自動生成工具就能產(chǎn)生相應的程序代碼。
3) 一個軟件自動程序生成工具。能夠根據(jù)開發(fā)者的軟件設計,直接生成程序代碼,省去軟件編碼這一步。同時也允許程序員對生產(chǎn)線出來的代碼進行個性化修改,減少從頭開始人工編程的工作量。
5 系統(tǒng)實現(xiàn)的功能
本系統(tǒng)具有數(shù)據(jù)導入和導出、數(shù)據(jù)分析、數(shù)據(jù)分類、關聯(lián)分析、統(tǒng)計圖表動態(tài)生成、支持自組織開發(fā)等功能,重要功能如下:
1) 即時動態(tài)的數(shù)據(jù)訪問。實現(xiàn)跨網(wǎng)絡、跨系統(tǒng)、跨數(shù)據(jù)庫、跨應用的科技數(shù)據(jù)的組織、管理、發(fā)現(xiàn)和透明訪問。
2) 高效的數(shù)據(jù)統(tǒng)計分析和圖表顯示功能。能夠支持不同的數(shù)據(jù)來源、表單結(jié)構、文檔格式,自動進行數(shù)據(jù)匯總、統(tǒng)計分析,動態(tài)生成圖表顯示。
3) 支持自組織開發(fā)[6]。在業(yè)務層的虛擬機信息管理系統(tǒng)中采用自動軟件生成技術,支持靈活的數(shù)據(jù)自定義功能,把信息系統(tǒng)的數(shù)據(jù)設計權力交給熟悉具體業(yè)務的用戶自己,為用戶提供一種通用的、可以自己定制的信息系統(tǒng)。
參考文獻:
[1] 周慶.數(shù)據(jù)集市設計方法及其在高校辦公自動化系統(tǒng)中的應用研究[D].東北大學,2006.
[2] 沈軼.基于數(shù)據(jù)倉庫技術設計與實現(xiàn)的企業(yè)設備管理系統(tǒng)[J].華中科技大學學報,2005,12.
[3] 趙景林.數(shù)據(jù)倉庫的體系結(jié)構與設計策略[J].計算機工程與設計,2001,22(12).
[4] 王梅,周嬌玲.一種列存儲數(shù)據(jù)倉庫中的數(shù)據(jù)復用策略[J].計算機學報,2013,38(8).
[5] 張琦,王梅.列存儲數(shù)據(jù)倉庫查詢執(zhí)行中重用緩沖區(qū)調(diào)度算法[J].計算機研究與發(fā)展,2011,48(10).
[6] 趙春澤,高小強.自組織經(jīng)驗進化預測軟件的設計與開發(fā)[J].計算機工程,2003,18(3).