袁 滿,陳永芳
(東北石油大學(xué)計算機(jī)與信息技術(shù)學(xué)院,黑龍江大慶163318)
傳統(tǒng)的數(shù)據(jù)管理平臺只考慮到單一數(shù)據(jù),忽略了數(shù)據(jù)之間的關(guān)系。只實現(xiàn)單一數(shù)據(jù)的維護(hù),沒有根據(jù)數(shù)據(jù)字典內(nèi)部數(shù)據(jù)之間存在的關(guān)系制定維護(hù)原則,進(jìn)而實現(xiàn)對多個有關(guān)系的數(shù)據(jù)進(jìn)行統(tǒng)一維護(hù);大多數(shù)平臺忽略了對代碼表的維護(hù);現(xiàn)有的維護(hù)平臺還比較傾向于手工操作,不太適合大批量數(shù)據(jù)的維護(hù),維護(hù)效率低[1]?;谶@些情況,筆者根據(jù)研究數(shù)據(jù)字典內(nèi)部數(shù)據(jù)存在的關(guān)系制定了各種維護(hù)規(guī)則,構(gòu)建了各種規(guī)則元模型,并且提出了基于企業(yè)元數(shù)據(jù)的用于存儲和管理企業(yè)數(shù)據(jù)的元模型。
針對企業(yè)中數(shù)據(jù)之間的名稱和代碼沖突問題,筆者制定了數(shù)據(jù)的命名原則:企業(yè)中不同數(shù)據(jù)字典的名稱和代碼不能相同;同一個數(shù)據(jù)字典所分的各個專業(yè)的名稱和代碼不能相同,而不同數(shù)據(jù)字典中的專業(yè)名稱和代碼可以相同;在同一個專業(yè)下存儲的表的名稱和代碼不能相同,而在不同專業(yè)或者不同的字典下表的名稱和代碼可以相同;在同一個表中不允許數(shù)據(jù)的名稱和代碼相同,而在不同的表中數(shù)據(jù)的名稱和代碼可以相同。
1)數(shù)據(jù)字典基本信息維護(hù)原則 當(dāng)刪除一個數(shù)據(jù)字典時,其內(nèi)所包括的所有數(shù)據(jù)要一并刪除;錄入或修改字典基本信息時要遵循與其他字典名稱代碼不沖突原則。
2)專業(yè)基本信息維護(hù)原則 當(dāng)刪除數(shù)據(jù)字典中的一個專業(yè)時,其內(nèi)所包含的所有數(shù)據(jù)要一并刪除;錄入或修改專業(yè)基本信息時也要遵循與其所在的字典內(nèi)的其他專業(yè)的名稱和代碼不沖突原則。
3)表基本信息維護(hù)原則 當(dāng)刪除一個表時,其內(nèi)所包含的所有數(shù)據(jù)也要一并刪除,其他表中引用該表中數(shù)據(jù)做外鍵的,取消外鍵引用關(guān)系,外鍵若為隨機(jī)碼則刪除外鍵,若為有實際意義的數(shù)據(jù)則不刪除,但從該表中復(fù)制的其他表中的數(shù)據(jù)要刪除;錄入或修改表基本信息時遵循表所在的專業(yè)中名稱代碼不沖突原則,修改表的代碼時,同時要修改引用該表中數(shù)據(jù)做外鍵的數(shù)據(jù)的外鍵引用表代碼。
利用平臺將數(shù)據(jù)中心數(shù)據(jù)向數(shù)據(jù)庫中錄入時要遵循數(shù)據(jù)字典、專業(yè)、表、數(shù)據(jù)的基本信息依次錄入;專業(yè)錄入時要按父專業(yè)、子專業(yè)依次錄入;表錄入時按父表、子表依次錄入;數(shù)據(jù)錄入時主鍵、外鍵依次錄入,即錄入一個外鍵時,其對應(yīng)的主鍵必須已在數(shù)據(jù)庫中才能成功錄入外鍵,否則不能錄入。
框架是任何軟件系統(tǒng)不可缺少的組成部分,而且提供的基本功能也大體相同。根據(jù)數(shù)據(jù)庫系統(tǒng)的體系框架,設(shè)計了數(shù)據(jù)字典管理與維護(hù)平臺的體系結(jié)構(gòu)框架,如圖1所示。
1)數(shù)據(jù)層 平臺所要管理和維護(hù)的相關(guān)數(shù)據(jù)字典的數(shù)據(jù)的集合。
2)元數(shù)據(jù)層 用于存放平臺運行的相關(guān)數(shù)據(jù),是對數(shù)據(jù)層的抽象的描述語言的集合,是整個平臺框架實現(xiàn)的基礎(chǔ)。元數(shù)據(jù)層包含數(shù)據(jù)字典的管理與維護(hù)元數(shù)據(jù)和存儲元數(shù)據(jù),其中管理與維護(hù)元數(shù)據(jù)包括用戶的基本信息元數(shù)據(jù)和各種管理維護(hù)規(guī)則元數(shù)據(jù);存儲元數(shù)據(jù)包含各種主題元數(shù)據(jù),有數(shù)據(jù)庫、專業(yè)、表、數(shù)據(jù)等描述元數(shù)據(jù)。
3)業(yè)務(wù)邏輯層 平臺應(yīng)用的主體,用于接收用戶輸入,通過數(shù)據(jù)庫訪問接口與數(shù)據(jù)庫進(jìn)行連接,并對用戶的訪問請求進(jìn)行處理等。
4)接口層 整個平臺的用戶接口部分,即為界面部分,是用戶與平臺間交互信息的窗口,主要功能是為操作人員提供操作界面,并指導(dǎo)他們使用界面對數(shù)據(jù)字典進(jìn)行管理與維護(hù)操作。它并不擁有業(yè)務(wù)邏輯,或只擁有部分不涉及企業(yè)核心機(jī)密的應(yīng)用邏輯。
圖1 平臺的體系結(jié)構(gòu)框架
元模型的構(gòu)建通常以經(jīng)典的四層元數(shù)據(jù)體系結(jié)構(gòu)[2]為基礎(chǔ)。筆者根據(jù)企業(yè)數(shù)據(jù)中心中的元數(shù)據(jù),構(gòu)建了用于統(tǒng)一管理和維護(hù)元數(shù)據(jù)的各種元模型,用PD圖[3]表示如圖2所示。
圖2 平臺元模型框架
圖3 平臺的主界面
1)存儲元模型 主要包含數(shù)據(jù)字典、專業(yè)、表、數(shù)據(jù)的描述元數(shù)據(jù),通過對該塊元模型中的這些元數(shù)據(jù)的維護(hù)實現(xiàn)對具體數(shù)據(jù)字典、專業(yè)、表、數(shù)據(jù)的維護(hù)。
2)用戶相關(guān)元模型 主要涉及到可以對平臺進(jìn)行操作的用戶、用戶所屬的組織結(jié)構(gòu)以及用戶的角色和用戶所能操作的視圖的基本信息。通過這塊元模型可以將操作者與平臺的具體功能界面聯(lián)系起來,也可以實現(xiàn)維護(hù)日志的記錄。
3)規(guī)則元模型 該塊元模型主要存儲和管理制定的各種維護(hù)規(guī)則,這些規(guī)則包含名稱、代碼的命名規(guī)則、基本信息維護(hù)規(guī)則、數(shù)據(jù)維護(hù)規(guī)則。根據(jù)這些規(guī)則的元模型利用模型驅(qū)動技術(shù)[4]實現(xiàn)數(shù)據(jù)字典的維護(hù)和管理,并實現(xiàn)數(shù)據(jù)字典內(nèi)部數(shù)據(jù)維護(hù)的一致性。
根據(jù)元模型驅(qū)動理論,通過設(shè)計的元模型實現(xiàn)數(shù)據(jù)字典的管理和維護(hù)功能,開發(fā)出平臺的操作界面。管理員可以通過界面上的按鈕和菜單對數(shù)據(jù)字典中的數(shù)據(jù)進(jìn)行管理與維護(hù)。圖3所示為平臺的主界面,界面左側(cè)的樹是通過提取數(shù)據(jù)庫中的數(shù)據(jù)字典和專業(yè)的基本信息生成的,右側(cè)的表中展示的是選中的專業(yè)所包含的表信息。主界面的主要作用就是展示管理的數(shù)據(jù)字典的基本信息,點擊界面上的按鈕或菜單實現(xiàn)數(shù)據(jù)字典的錄入、刪除、修改等操作。
該平臺在 “大慶油田勘探開發(fā)研究院數(shù)據(jù)主庫管理軟件開發(fā)項目”中得到了很好的應(yīng)用??碧介_發(fā)研究院的勘探開發(fā)數(shù)據(jù)字典和PCEDM數(shù)據(jù)字典整理完成后需要對他們進(jìn)行管理和維護(hù),以保證字典的規(guī)則有序的存儲,合理的使用和擴(kuò)展。通過項目的實例應(yīng)用,說明該平臺對數(shù)據(jù)字典的管理與維護(hù)的可操作性強,彌補了數(shù)據(jù)字典管理平臺的空白,具有十分重要的應(yīng)用價值。
[1]于宗民.從邏輯數(shù)據(jù)模型和數(shù)據(jù)字典著手實施元數(shù)據(jù)管理 [J].中國金融電腦,2008(3):77-81.
[2]徐秀華.基于元模型的用戶界面建模系統(tǒng)的研究[D].大慶:大慶石油學(xué)院,2004.
[3]曾慶猛,王冬梅,姚子修,等.中石油A1系統(tǒng)PCEDM數(shù)據(jù)模型基本實體初步研究[J].勘探地球物理進(jìn)展,2008,31(6):464-466.
[4]時貴英.基于元模型的軟件框架技術(shù)研究[D].大慶:大慶石油學(xué)院,2006.