999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

1主從結構的雙時態數據模型的設計應用

2015-04-29 00:44:03黃雄波
智能計算機與應用 2015年2期

摘 要:針對醫院信息管理系統(HIS)中的時態信息處理需求,提出了一種具有主從結構的雙時態數據模型,進一步,對該模型的時態實體完整性、時態參照完整性以及用戶定義的時態完整性進行了分析和設計。實際應用表明,新模型不僅具有良好的數據完整性約束機制,而且還易于實現時態數據的分段儲存。

關鍵詞:主從結構;雙時態數據模型;數據完整性

中圖分類號:TP311.11 文獻標識碼:A 文章編號:2095-2163(2015)02-

Design Application of Master-Slave Structures Bi-temporal Data Model

HUANG Xiongbo

(Department of Electronic and Information Engineering, Foshan Professional Technical Collegee, Foshan Guangdong 528137, China)

Abstract: In view of the hospital?information management system?(HIS)?of temporal?information processing demand,?proposes a?bi-temporal?data model with?master-slave?structure,?on the basis of this,?the temporal?integrity?of the model is?the temporal entity?integrity,?referential integrity?and?temporal?user defined?analysis and design.?The actual application shows that,?the new model not only has?data integrity constraint?mechanism,?but also?easy to?realize sectional?storage?of temporal data.

Keywords: Master/Slave Structures; Bi-temporal Data Model; Data Integrity

0 引 言

自然界的各種事物總是伴隨著時間的流逝而不停地在演變和進化,相應地,事物的數據屬性也在不斷地變化。一般地說,傳統的關系數據庫管理系統(RDBMS)是屬于快照數據庫,即只保存事物在某一時刻的狀態,據此,為了更好地記載并處理事物在發展過程中的各個狀態,時態數據庫技術便應運而生[1-3]。由于當前尚沒有形成商品化的時態數據庫系統(TDBMS),各種領域的時態信息處理系統只能在RDBMS上進行構建,故諸如時態數據的冗余優化儲存、時態索引及時態數據的完整性約束等一系列的問題均需要開發人員自行處理[4]。

在醫院信息管理系統(HIS,Hospital information system)的電子病歷中,其數據屬性具有明顯的時態特征,例如,患者的各種檢查記錄、診斷記錄及治療記錄等屬性均隨著時間的推移而不斷在變化[5]。針對電子病歷時態信息的數據特征,設計實現了一種具有主從結構的雙時態數據模型,在此基礎上,就該模型的數據完整性作了深入的分析和設計。

1 相關基礎知識

1.1 雙時態數據模型

定義1 有效時間(Vail Time):是指事物在現實世界中保持在某一狀態的那段時期。

有效時間通常可用時間區間來表示,其中,為有效時間的起始時間,而為有效時間的結束時間。在實際應用中,常用變量來表示有效時間的結束時間一直有效并保持到現在或延伸至將來。

定義2 事務時間(Transaction Time):是指某個數據庫事實被記載至計算機系統中的整個時期,即對應著數據庫本身的增加、刪除及修改等操作的發生時間。

類似地,事務時間通常可用時間區間來表示,其中,為事務時間的起始時間,而為事務時間的結束時間。事務時間反映了事物在計算機系統中的變遷歷史,由于該時間是從計算機的系統時鐘處導出,因而具有應用上的不可操縱性。在事務時間中,常用變量來表示數據庫的某一元組直至目前為止還沒有發生變更(刪除或修改)操作。

定義3 雙時態數據庫(Bi-temporal DataBase):是指同時支持有效時間和事務時間的數據庫系統。

雙時態數據庫不僅保存了事物在現實世界中各個時期的狀態,而且也保存了事物在計算機系統中的記載變更過程,因而才是真正意義上的時態數據庫。

事實上,在保存事物的歷史變化及其在計算機系統的記載變更過程中,雙時態數據庫花費了海量的儲存代價,為了有效地減少數據的冗余儲存,目前較為成熟的做法是將事物的常量屬性和時態屬性分開存儲[6]。在電子病歷中,可以把患者的姓名、性別、出生年月、血型等不隨時間變化而變化的屬性保存在常量關系中,而諸如診斷記錄、主管醫生等與時間有關的屬性則保存在各個時態關系中,如圖1所示。

圖1 電子病歷中患者信息的時態E-R模型

Fig.1 Temporal E-R?model?patient information?in electronic medical records

對圖1的各個關系的屬性定義如下(帶#的屬性為該關系的主鍵):

患者基本信息:{身份證號#,姓名,性別,血型,…};

診斷記錄時態信息:{住院號#,疾病代碼#,疾病開始時間,疾病痊愈時間,事務錄入時間#,事務變更時間};

主管醫生時態信息:{住院號#,醫生工號#,有效開始時間,有效時間,事務錄入時間#,事務變更時間};

……

1.2 雙時態數據的完整性

數據庫的完整性就是指通過一定的語義約束來確保各屬性取值的正確性、一致性及相容性[7-8],以患者信息的常量關系為例,各個患者的身份證號必須是唯一的,且其血型只能是A型、B型、AB型及O型中的一種。相對常量屬性而言,時態關系的完整性約束就顯得尤為復雜,特別是在傳統的RDBMS上進行時態信息處理時,其時態完整性的約束檢查機制更多的是由開發人員自行構建。下面將結合電子病歷的患者信息對時態實體完整性、時態參照完整性及用戶定義的時態完整性進行分析和討論。

(1)時態實體完整性

時態實體完整性就是指元組在鍵上的時態取值不可重復,且不能為空值。如表1的患者診斷記錄雙時態數據表中,其聯合主鍵為住院號、疾病代碼和事務錄入時間,不難發現 ,由于#1和#2記錄均在[2014/12/08, 2014/12/15]期間內對同一患者的同一病情進行了記載,因而這兩條記錄是不滿足時態實體完整性約束要求的。但由于這兩條記錄在三個聯合主鍵上的取值不完全相同且也不為空值,因而傳統的RDBMS就無法對該種重復進行檢查和約束。

表1 電子病歷中患者診斷記錄的雙時態儲存

Tab.1 Bi-temporal storage of patient?diagnosis?recorded?in the electronic medical record??

Rec-

No

住院號#

疾病

代碼#

疾病

開始時間

疾病

痊愈時間

事務

錄入時間#

事務

更改時間

#1

14120201

52031

2014/12/05

2014/12/18

2014/12/05

UC

#2

14120201

52031

2014/12/08

2014/12/15

2014/12/08

UC

#3

14101822

08528

2014/10/12

2014/11/16

014/10/12

UC

#4

14101822

34420

2014/10/22

2014/11/08

2014/10/22

UC

(2)時態參照完整性

時態參照完整性是指多個時態關系上的約束,包含外鍵上的約束及各個時態關系上時間區間的歸屬約束兩種。

?設屬性集是時態關系上的外鍵,屬性集是時態關系上的外鍵,則外鍵上的約束要求為:上的元組在屬性上的取值必須取空值或等于時態關系中某元組在上的值。

?設

分別是時態關系上關于同一外鍵的各元組有效時間的并集,而為該外鍵的實際有效時間區間,則各個時態關系上時間區間的歸屬約束要求為:。以 “14101822”住院號為例,若患者在[2014/10/12,2014/11/16]期間入院接受治療,在表1中,由于[2014/10/12,2014/11/16]和 [2014/10/22,2014/11/08]} 均包含于( ) [2014/10/12,2014/11/16],故表1的#3、#4元組均滿足時態參照完整性中時間區間的歸屬約束;而表2中,由于[2014/12/12,2014/12/17] [2014/10/12,2014/11/16],故表2的#1元組不滿足時態參照完整性中時間區間的歸屬約束。

表2 電子病歷中患者的主管醫生的雙時態儲存示例

Tab.2 Bi-temporal storage of the doctor in charge?recorded?in the electronic medical record

Rec-

No

住院號#

醫生

工號#

有效

開始時間

有效

結束時間

事務

錄入時間#

事務

更改時間

#1

14101822

2001

2014/12/12

2014/12/17

2014/12/12

UC

?用戶定義的時態完整性

用戶定義的時態完整性是指用戶針對某一實際應用需求自行添加一些特殊的約束以便使數據滿足一定的時態語義要求。以多值時態數據為例,由于存在并發癥的原因,因而表1應允許同一患者在相同的時間區間里記載2種或以上的疾病(如表1中的#3和#4記錄所示);與表1不同,患者在同一時間區間里只能有1名主管醫生,因而表2應約束為單值時態數據。可見,不同的時態關系有著不同的時態語義約束要求。

2 主從結構的雙時態數據模型的設計與實現

2.1 主從結構的雙時態數據模型的設計

從圖1中可知,各個時態屬性均以獨立的時態關系進行存儲,故在實施時態參照完整性約束時因涉及多表連接操作必然引發效率低下等問題,為此,設計了一種具有主從結構的雙時態數據模型,該模型的結構說明如下:

其中,為常量關系,為對應的常量屬性;為主結構的時態關系,為主鍵,每一個的時態元組其實際有效時間區間為;為從結構的時態關系,為外鍵,引用,和分別為時態屬性的類型及其相應的取值,為各個從結構的時態元組的有效時間區間。此外,當有成立時,則其對應的也成立。

基于上述模型,對圖1的電子病歷重新設計,得到如表3和表4所示的主從時態數據表格:

表3 電子病歷中患者醫療信息的主結構雙時態數據表

Tab.3 The master?structure of?information in the electronic medical records?of the?patients with bi-temporal?data table

Rec

-No

住院號#

入院時間

出院時間

事務

錄入時間#

事務

更改時間

#1

14101822

2014/10/12

Now

2014/10/12

2014/11/16

#2

14101822

2014/10/12

2014/11/16

2014/11/16

UC

表4 電子病歷中患者醫療信息的從結構雙時態數據表

Tab.4 The slave?structure of?information in the electronic medical records?of the?patients with bi-temporal?data table

Rec

-No

住院號#

時態

屬性#

時態

取值#

有效

開始時間

有效

結束時間

事務

錄入時間#

事務

更改時間

#1

14101822

診斷記錄

08528

2014/10/12

Now

2014/10/12

2014/11/16

#2

14101822

診斷記錄

08528

2014/10/12

2014/11/16

2014/11/16

UC

#3

14101822

主管醫生

2001

2014/10/12

Now

2014/10/12

2014/11/16

#4

14101822

主管醫生

2001

2014/10/12

2014/11/16

2014/11/16

UC

#5

14101822

治療記錄

02332

2014/10/12

2014/10/19

2014/10/12

UC

在表3的主結構雙時態數據表中,#1元組表明了住院號為“14101822”的患者自2014/10/12起開始入院接受治療,系統于當天記載了該事件,由于此時尚不確定患者的具體出院時間,故出院時間取值為,同時,事務更改時間也置為。當患者于2014/11/16出院時,按照雙時態數據庫數據只增不刪的規則,首先把#1元組的事務更改時間從原來的變更為2014/11/16(即從2014/11/16起,#1元組不再有效);同時,添加#2元組記載患者在[2014/10/12,2014/11/16]期間入院接受治療的事實。

在表4的從結構雙時態數據表中,諸如診斷記錄、主管醫生及治療記錄等所有時態屬性均保存在同一數據表格中,從結構雙時態數據表的數據操作與表3相同。

2.2 主從結構的雙時態數據模型的完整性約束

在主從結構的雙時態數據模型中,其數據完整性約束應在主結構和從結構的雙時態數據表上進行。其中,主結構雙時態數據表應進行實體及用戶定義的時態完整性約束,而從結構雙時態數據表則應進行實體、參照及用戶定義共3種時態完整性約束。不失一般性,這里僅討論從結構雙時態數據表的完整性約束。

算法 從結構雙時態數據表的完整性約束算法

輸入:從結構雙時態數據表,執行增刪改操作后的待保存元組;

輸出:若滿足時態完整性約束的,則;否則;

begin

(1)時態實體完整性約束的檢查

(1.1)select * from Slave_DA where ( (住院號=var1) and (時態屬性=var2) and (時態取值=var3) )→DSAll;

//在中查找{住院號、時態屬性、時態取值}與元組完全相同的數據,檢索結果生成一數據集;其中動態參數分別為元組在{住院號、時態屬性、時態取值}屬性上的取值;

(1.2) 按照文獻[9]對數據集DSALL的有效開始時間為Now變量的元組進行綁定,并根據事務更改時間選取與temp_record元組有關的數據→DS;

(1.3)for i:=1 to DS.recordcount do

//遍歷比對檢索結果

begin

if not((DS.有效開始時間>temp_record.有效結束時間) or (temp_record.有效開始時間>DS.有效結束時間)) then

begin

flag[0]:=False;

break;

//元組在有效時間區間內出現重復記載,時態實體完整性約束標志置,并提前退出遍歷

end;

end;

(1.4)flag[0]:=True;

//通過時態實體完整性約束檢查后,]置

(2)時態參照完整性約束的檢查

(2.1)select * from Master_DA where 住院號=var1→DS;

(2.2)按照文獻[9]對數據集DS 中的有效開始時間為Now變量的元組進行綁定;

(2.3)if not((temp_record.有效開始時間>= DS.有效開始時間) and (temp_record.有效結束時間<= DS.有效結束時間)) then flag[1]:=False

else flag[1]:=True;

//元組與主結構雙時態數據表 進行參照完整性約束檢查,并根據檢查結果置時態參照完整性約束標志]為或為

(3)用戶定義的時態完整性約束的檢查

(3.1)根據temp_record元組的類型在用戶定義的時態完整性約束庫中選取對應的約束規則項→rule[i];

(3.2)for i:=1 to rulecount do

begin

if not(rule[i]_check(temp_record)) then

flag[i+1]:=False;

else flag[i+1]:=True;

end;

//判別是否滿足用戶自定義的時態完整性約束,并根據檢查結果設置相應的完整性約束標志

(4)時態完整性約束的處理

(4.1)若所有的時態完整性約束標志flag[i]均為True,則save(temp_record);

(4.2)若出現任一時態完整性約束標志flag[i]不為True,則return(error_code);

end.

2.3 數據的分段存儲

為了提高主從結構的雙時態數據模型的工作效能,可以對時態數據進行分段存儲[10]。如圖2所示,那些仍在住院接受治療的患者其相關時態數據儲存在工作庫中,而當患者出院后(此時該患者在表中的有效結束時間小于),便把工作庫中有關該患者的相關所有時態數據遷移至歷史庫中。

圖2 主從結構的雙時態數據模型的分段儲存模型

Fig.2 Segmented storage?model of double bi-temporal data model?of the?master-slave?structure

3 結束語

在沒有可用的時態數據庫系統的情況下,在相當長的一段時期里,開發人員只能根據不同時態應用需求在RDBMS上建立各種形式不一的時態數據模型。本文結合電子病歷中患者的醫療信息,提出了一種具有主從結構的雙時態數據模型,該模型不僅具有良好的數據完整性約束機制,而且還易于實現時態數據的分段儲存。下一步的主要工作有,在此模型的基礎上,設計具有可視化操作的用戶自定義時態完整性約束系統,并把該模型推廣至其它領域中去。

參考文獻:

[1] 湯庸.時態數據庫導論[M].北京:北京大學出版社,2004:1-121.

[2] 郝忠孝.時態數據庫設計理論[M].北京:科學出版社,2009:1-175.

[3] 湯庸,湯娜,葉小平.時態信息處理技術研究綜述[J].中山大學學報(自然科學版),2003, 42(4):4-8.

[4] 姜曉軼,周云軒·時態數據庫研究進展[J]·計算機工程與應用,2005,41(24):27-30·

[5] 黃雄波.電子病歷中時態數據庫的分析與設計[D]. 華南理工大學自動化科學與工程學院,2007.

[6] 黃雄波·電子病歷中重疊時態數據的分析與消除[J]·計算機技術與發展,2009,18(3):235-238·

[7] 王珊,薩師煊.數據庫系統概論(第4版)[M].北京:高等教育出版社,2006:1-40.

[8] 沈鈞毅. 數據庫系統原理[M].西安: 西安交通大學出版社,2014:16-30.

[9] 葉小平,湯庸·時態變量“Now”語義及相應時態關系運算[J]·軟件學報,2009,16(5):838-845·

[10] 唐常杰,于中華,游志勝等·時態數據的變粒度分段存儲策略及其效益分析[J]·軟件學報,1999,10(10):1085-1090·

1 基金項目:廣東省科技計劃工業攻關項目(2011B010200031);佛山職業技術學院校級重點科研項目(2011KY006)。

作者簡介:黃雄波(1975-),男,廣東南海人,碩士,副教授,主要研究方向:時間序列分析、數字圖像處理。

主站蜘蛛池模板: 高潮毛片无遮挡高清视频播放| 日韩精品一区二区三区swag| 亚洲AⅤ无码日韩AV无码网站| 日韩在线视频网| 在线观看国产小视频| 免费jizz在线播放| 亚洲V日韩V无码一区二区| 亚洲欧美另类日本| 国产手机在线观看| 91小视频在线播放| 国产精品久久自在自2021| 婷婷综合色| 亚洲av综合网| 日本午夜精品一本在线观看| 国产成人综合久久精品尤物| 亚洲成A人V欧美综合| 亚洲成人一区二区三区| 青青久久91| 亚洲成人高清在线观看| 亚洲欧美自拍中文| 99热最新在线| 成人福利在线观看| 91美女在线| 日日拍夜夜操| 国产日韩欧美在线播放| 色窝窝免费一区二区三区 | a亚洲天堂| 欧美区一区| 日韩天堂在线观看| lhav亚洲精品| a级毛片免费在线观看| 日韩大乳视频中文字幕| 国产手机在线小视频免费观看| 欧美精品一区在线看| 亚洲国产91人成在线| 日韩精品一区二区三区中文无码| 亚洲一区无码在线| 91视频青青草| 亚洲福利视频一区二区| 国产精品美人久久久久久AV| 美女啪啪无遮挡| 欧美中文字幕第一页线路一| 国产黄在线免费观看| 成人亚洲天堂| 精品国产一区二区三区在线观看 | 欧美伦理一区| 亚洲天堂在线免费| aa级毛片毛片免费观看久| 国产极品美女在线观看| 亚洲 欧美 中文 AⅤ在线视频| 久久永久免费人妻精品| 国产精品3p视频| 蜜臀AV在线播放| 99视频精品在线观看| 国产99视频免费精品是看6| 免费高清a毛片| 亚洲第一区精品日韩在线播放| 免费无码网站| 国产精品太粉嫩高中在线观看| 亚洲经典在线中文字幕| 亚洲小视频网站| 国产真实二区一区在线亚洲| 亚洲人人视频| A级毛片高清免费视频就| 91丝袜乱伦| 欧美精品不卡| 成人va亚洲va欧美天堂| 毛片卡一卡二| 午夜老司机永久免费看片| 狠狠色综合久久狠狠色综合| 亚洲天堂久久久| 久久综合伊人77777| 欧美午夜在线播放| 少妇精品久久久一区二区三区| 精品国产Av电影无码久久久| 欧美区国产区| 亚洲综合精品香蕉久久网| 夜夜操国产| 亚洲床戏一区| 妇女自拍偷自拍亚洲精品| 亚洲 欧美 偷自乱 图片| 男人天堂伊人网|