主題資料庫
主題資料庫
主題資料庫的設計目的是為了加速應用項目的開發。這就是說,通過建立主題資料庫,簡單、科學地實現了應用系統的集成。
將信息經過過濾識別出來,再從全局出發,根據管理需求信息按照不同的分類定義工作,然後分別對每個主題資料庫定義主題。
主題資料庫的設計目的是為了加速應用項目的開發。程序人員使用的數據應已存在於有關資料庫中。它把企業的全部數據劃分成一些可以管理的單位——主題資料庫。主題資料庫應設計得儘可能穩定,能在較長時間內為企業的信息資源提供穩定的服務。穩定並非限制主題資料庫永不發生變化,而是要求在變化后不會影響已有的應用項目工作。主題資料庫的邏輯結構應獨立於當前的計算機硬體和軟體的實現過程,這樣能保持在技術不斷進步的情況下,主題資料庫的邏輯結構仍然有效。
主題資料庫的基本特徵有:
1.面向業務主題。主題資料庫是面向業務主題的數據組織存儲,例如,企業中需要建立的典型的主題資料庫有:產品、客戶、零部件、供應商、訂貨、員工、文件資料、工程規範等。其中產品、客戶、零部件等資料庫的結構,是對有關單證、報表的數據項進行分析整理而設計的,不是按單證、報表的原樣建立的。這些主題資料庫與企業管理中要解決的主要問題相關聯,而不是與通常的計算機應用項目相關聯。
2.信息共享。主題資料庫是對各個應用系統“自建自用”的資料庫的徹底否定,強調建立各個應用系統“共建共用”的共享資料庫。不同的應用系統的計算機程序調用這些主題資料庫,例如,庫存管理調用產品、零部件、訂貨資料庫;採購調用零部件、供應商、工程規範資料庫等。
3.一次一處輸入系統。主題資料庫要求調研分析企業各經營管理層次上的數據源,強調數據的就地採集,就地處理、使用和存儲,以及必要的傳輸、匯總和集中存儲。同一數據必須一次、一處進入系統,保證其準確性、及時性和完整性,經由網路-計算機-資料庫系統,可以多次、多處使用。
4.由基本表組成。一個主題資料庫的科學的數據結構,是由多個達到“基本表” (Base Table)規範的數據實體構成的,這些基本表具有如下的特性:
· 原子性——基本表中的數據項是數據元素(即最小的、不能再分解的信息單元);
· 演繹性——可由基本表中的數據生成全部輸出數據(即這些基本表是精練的,經過計算處理可以產生全部企業管理所需要的數據);
· 規範性——基本表中數據滿足三範式(3-NF)要求,這是科學的、能滿足演繹性要求、並能保證快捷存取的數據結構。
我們看一個簡單的例子。某單位的工資系統是按工資單建資料庫的,職工張華的工資單編號是0104。該單位人事系統是按職工檔案建資料庫的,張華在人事系統中的編號是1122。人事系統要獲得張華的工資數據,需要做介面程序將1122轉換成0104,才能正確地檢索;反之,工資系統要獲得人事系統的數據,需要做介面程序將0104轉換成1122。這樣,2個應用系統至少需要2個介面。如果再加上安監系統和社保系統,共4個應用系統要互相交流數據,就至少需要12個介面。而企業經營管理中如果有20個大大小小“孤島式”的應用系統需要相互交流數據,就至少需要380個介面。這麼多的介面無法做完,即使做完所有的介面,整個系統的運行也將是低效率和脆弱的。所以,企圖通過做介面實現系統集成,從來就是可望而不可及的。
解決這類應用系統集成問題的正確方法是:不按照單證報表原樣建立資料庫,而是面向業務主題建立資料庫,這就是主題資料庫。上例中的員工信息是幾個應用系統所共用的,應該對企業的所有員工統一編號,有關員工的信息統一組織存儲,從而能保證信息共享——各應用程序都存取共享的“員工主題資料庫”,這就從根本上取消了不必要的介面。這就是說,通過建立主題資料庫,簡單、科學地實現了應用系統的集成。
發達國家在上世紀70年代中後期至80年代初的信息化初級階段,遇到過包括“信息孤島”問題在內的“數據處理危機”問題。詹姆斯·馬丁(James Martin)提出的主題資料庫概念和有關理論方法,為解決這些問題作出了重要的貢獻,這對我們具有十分重要的借鑒意義。