亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        醫(yī)院信息系統(tǒng)業(yè)務(wù)單據(jù)查詢的性能優(yōu)化與實(shí)現(xiàn)

        2023-05-17 03:17:18唐山李娟
        電子技術(shù)與軟件工程 2023年5期
        關(guān)鍵詞:序列化字段單據(jù)

        唐山 李娟

        (四川省計(jì)算機(jī)研究院 四川省成都市 610041)

        隨著醫(yī)院信息系統(tǒng)(Hospital Information System,以下簡(jiǎn)稱HIS 系統(tǒng))使用年份的增長(zhǎng),用戶數(shù)據(jù)的不斷積累,病人處方清單數(shù)據(jù)的不斷增加,若不對(duì)HIS 系統(tǒng)中的業(yè)務(wù)單據(jù)查詢采取進(jìn)一步的優(yōu)化措施,則在使用過(guò)程中,HIS 系統(tǒng)可能會(huì)出現(xiàn)業(yè)務(wù)單據(jù)數(shù)據(jù)查詢時(shí)間等待過(guò)長(zhǎng)、頁(yè)面無(wú)反應(yīng)、功能使用出現(xiàn)“卡死”等現(xiàn)象,嚴(yán)重影響醫(yī)院用戶在相關(guān)單據(jù)處理環(huán)節(jié)的使用體驗(yàn)。

        本文主要根據(jù)醫(yī)院業(yè)務(wù)單據(jù)數(shù)據(jù)存儲(chǔ)和檢索的實(shí)際情況,并結(jié)合業(yè)務(wù)單據(jù)相關(guān)特點(diǎn)(單據(jù)主要由單據(jù)整體信息和明細(xì)信息構(gòu)成),設(shè)計(jì)出一種“業(yè)務(wù)單據(jù)包”的業(yè)務(wù)單據(jù)查詢的優(yōu)化方法,用于提升HIS 系統(tǒng)業(yè)務(wù)單據(jù)數(shù)據(jù)查詢性能和頁(yè)面加載效率。

        本文中使用的名詞定義:

        退藥單:門(mén)診或住院患者,退藥的單據(jù),該單據(jù)包括單據(jù)整體信息(如:病人信息、藥品信息、費(fèi)用總額信息、制單信息、審核信息等)和明細(xì)信息(藥品名稱、規(guī)格、劑型、數(shù)量、單價(jià)、小計(jì)等),且具有審核流程。

        退費(fèi)單:門(mén)診患者退費(fèi)的業(yè)務(wù)單據(jù),該單據(jù)包括單據(jù)整體信息(如:病人信息、藥品信息、費(fèi)用總額信息、制單信息、審核信息等)和明細(xì)信息(藥品名稱、規(guī)格、劑型、數(shù)量、單價(jià)、小計(jì)等),且具有審核流程。同時(shí)門(mén)診退費(fèi)單可由退藥單直接生成(庫(kù)房未發(fā)藥時(shí))。

        住院沖銷(xiāo)單:針對(duì)診療服務(wù)進(jìn)行沖銷(xiāo)的單據(jù)。該單據(jù)包括單據(jù)整體信息(如:病人信息、診療服務(wù)信息、費(fèi)用總額信息、制單信息、審核信息等)和明細(xì)信息(診療服務(wù)名稱、數(shù)量、單價(jià)、小計(jì)等),且具有審核流程。

        統(tǒng)領(lǐng)單:護(hù)士每日一次性領(lǐng)取多位住院病人的藥品的單據(jù)。該單據(jù)包括單據(jù)整體信息(如:病人信息、費(fèi)用總額信息、制單信息等)和明細(xì)信息(藥品名稱、規(guī)格、劑型、數(shù)量等)。病人費(fèi)用清單:病人本次住院或門(mén)診就診過(guò)程中產(chǎn)生的費(fèi)用清單。

        1 常規(guī)優(yōu)化措施

        1.1 業(yè)務(wù)單據(jù)查詢語(yǔ)句的優(yōu)化

        在SQL 查詢語(yǔ)句的規(guī)范、嚴(yán)謹(jǐn)撰寫(xiě),能夠有效提升數(shù)據(jù)查詢速度,主要具有以下優(yōu)化SQL 語(yǔ)句措施:

        (1)避免在條件語(yǔ)句中對(duì)索引使用函數(shù);

        (2)適當(dāng)減少子查詢及其臨時(shí)表的使用能夠有效的提高查詢語(yǔ)句的性能;

        (3)盡量不要使用select *這種方式提取字段列,而要指定查詢的列名;

        (4)當(dāng)模糊匹配以%開(kāi)頭時(shí),該列索引將失效,若不以%開(kāi)頭,該列索引有效[1];

        (5)優(yōu)先使用union all,避免使用union。

        1.2 索引優(yōu)化

        為了提升表數(shù)據(jù)的檢索效率,減少磁盤(pán)I/O,有效避免全盤(pán)的表掃描,在創(chuàng)建表或表數(shù)據(jù)量過(guò)大時(shí),一般會(huì)在合適的字段上建立索引。建立索引時(shí)需注意:

        (1)條件語(yǔ)句中使用的字段應(yīng)盡量是索引中的字段[1];

        (2)很少在where 子句中出現(xiàn)的列,不宜建立索引[1];

        (3)多表關(guān)聯(lián)查詢時(shí),關(guān)聯(lián)字段需建立索引;

        (4)對(duì)經(jīng)常需要更新、刪除和插入的列(主鍵及外鍵除外)不宜建立索引[1];

        (5)表中的索引不宜過(guò)多。索引固然可以提高相應(yīng)查詢的效率,但由于數(shù)據(jù)插入或更新時(shí)可能導(dǎo)致重建索引,導(dǎo)致表中數(shù)據(jù)插入及數(shù)據(jù)更新的執(zhí)行效率。所以如何建索引需要視具體情況而定。

        1.3 數(shù)據(jù)歸檔

        對(duì)不活躍的數(shù)據(jù)并將其從生產(chǎn)系統(tǒng)遷移到長(zhǎng)期存儲(chǔ)系統(tǒng)中。針對(duì)醫(yī)院業(yè)務(wù)情況,可以對(duì)2 年及其以上的醫(yī)療數(shù)據(jù),如:費(fèi)用清單、處方清單、病案首頁(yè)等歷史數(shù)據(jù)按年度、醫(yī)療機(jī)構(gòu)(如:若一個(gè)區(qū)縣具有多個(gè)相互獨(dú)立的醫(yī)療機(jī)構(gòu),則可按縣域進(jìn)行部署,各機(jī)構(gòu)使用同一套HIS 系統(tǒng))進(jìn)行數(shù)據(jù)歸檔,便于保障當(dāng)前生產(chǎn)系統(tǒng)性能最優(yōu)。

        1.4 業(yè)務(wù)分區(qū)

        針對(duì)醫(yī)院的掛號(hào)、門(mén)診、住院、體檢等業(yè)務(wù)類型,進(jìn)行數(shù)據(jù)庫(kù)表分區(qū)創(chuàng)建,便于精準(zhǔn)定位分區(qū)查詢數(shù)據(jù),而不需要全表的掃描查詢,便能提高數(shù)據(jù)檢索效率。特別是醫(yī)院處方清單存在數(shù)據(jù)量較大的情況下,在查詢某住院病人處方清單時(shí),只需要傳入住院分區(qū)對(duì)應(yīng)的字段標(biāo)識(shí),即可從掛號(hào)、門(mén)診、住院、體檢等處方中快速檢索出該病人的處方明細(xì)情況。

        1.5 服務(wù)器端緩存技術(shù)

        通過(guò)服務(wù)器端緩存技術(shù),將HIS 系統(tǒng)的熱點(diǎn)數(shù)據(jù)、常用數(shù)據(jù)進(jìn)行緩存,讓用戶請(qǐng)求通過(guò)緩存服務(wù)器進(jìn)行處理(緩存中有此請(qǐng)求數(shù)據(jù),則無(wú)需從數(shù)據(jù)庫(kù)中提取數(shù)據(jù)),能夠有效降低數(shù)據(jù)庫(kù)訪問(wèn)壓力,提高整個(gè)系統(tǒng)的訪問(wèn)性能。

        2“業(yè)務(wù)單據(jù)包”的設(shè)計(jì)與實(shí)現(xiàn)

        2.1 應(yīng)用場(chǎng)景

        針對(duì)HIS 系統(tǒng)中的常用單據(jù),如:退藥單、退費(fèi)單、住院沖銷(xiāo)單、統(tǒng)領(lǐng)單、病人費(fèi)用清單等單據(jù),此類單據(jù)在數(shù)據(jù)量過(guò)大(如:加載退藥單時(shí),從上億條處方清單檢索出該單據(jù)的處方)且關(guān)聯(lián)多張業(yè)務(wù)表(如關(guān)聯(lián)醫(yī)生表、病人信息表、庫(kù)存表、費(fèi)用表等)后,可能會(huì)出現(xiàn)數(shù)據(jù)項(xiàng)加載過(guò)于緩慢、功能頁(yè)面“卡死”等情況,且此類單據(jù)的內(nèi)容項(xiàng)在后期變化較小,則可進(jìn)行“業(yè)務(wù)單據(jù)包”的方式實(shí)現(xiàn),便于業(yè)務(wù)單據(jù)數(shù)據(jù)的加載和查詢效率。

        2.2 定義

        “業(yè)務(wù)單據(jù)包”是指將特定的、不經(jīng)常修改的業(yè)務(wù)個(gè)體實(shí)例數(shù)據(jù),以json、xml 等方式進(jìn)行序列化,序列化后的數(shù)據(jù)視為一個(gè)整體的業(yè)務(wù)單據(jù)包,并存儲(chǔ)于“業(yè)務(wù)單據(jù)包”表中,表中的主鍵與業(yè)務(wù)單據(jù)表中的主鍵進(jìn)行關(guān)聯(lián)(如:退藥單中主鍵ID 與“業(yè)務(wù)單據(jù)包”表中主鍵ID 一致)。查詢對(duì)應(yīng)的某個(gè)業(yè)務(wù)單據(jù)時(shí),先從“業(yè)務(wù)單據(jù)包”表以唯一索引的方式來(lái)對(duì)該整體對(duì)象(單據(jù))進(jìn)行檢索并反序列化,最終完成單據(jù)加載。

        2.3 表結(jié)構(gòu)設(shè)計(jì)

        2.3.1 處方清單表(T_HIS_PRESCRIPTION_LIST)

        處方清單表主要用于存儲(chǔ)病人處方信息,如醫(yī)生信息、處方信息、藥品庫(kù)存信息、費(fèi)用信息等,為了考慮到在統(tǒng)計(jì)退藥、退費(fèi)、費(fèi)用結(jié)算等信息的便利,故此表的外鍵關(guān)聯(lián)字段較多,詳見(jiàn)表1。

        表1: 處方清單表

        2.3.2 業(yè)務(wù)單據(jù)表(T_HIS_BILL)

        業(yè)務(wù)單據(jù)表主要用于存儲(chǔ)單據(jù)信息,其具體設(shè)計(jì),詳見(jiàn)表2。

        表2: 業(yè)務(wù)單據(jù)表

        2.3.3“業(yè)務(wù)單據(jù)包”表(T_HIS_BILL_BAG)

        “業(yè)務(wù)單據(jù)包”表用于存儲(chǔ)業(yè)務(wù)單據(jù)的整體和明細(xì)數(shù)據(jù),詳見(jiàn)表3。

        2.3.4 處方清單表、業(yè)務(wù)單據(jù)表與“業(yè)務(wù)單據(jù)包”表之前的關(guān)系

        如圖1 所示。

        圖1: “業(yè)務(wù)單據(jù)包”表與單據(jù)表之間的關(guān)系圖

        2.4 實(shí)現(xiàn)流程設(shè)計(jì)

        在實(shí)現(xiàn)“業(yè)務(wù)單據(jù)包”存儲(chǔ)及查詢過(guò)程中,主要包括生成單據(jù)結(jié)果集、存儲(chǔ)單據(jù)結(jié)果集、查詢單據(jù)結(jié)果集、單據(jù)結(jié)果集反序列化等環(huán)節(jié),如圖2 所示。

        圖2: “業(yè)務(wù)單據(jù)包”實(shí)現(xiàn)流程圖

        2.5 實(shí)現(xiàn)過(guò)程

        2.5.1 生成單據(jù)結(jié)果集

        當(dāng)業(yè)務(wù)單據(jù)處于待審核狀態(tài)時(shí)(此時(shí)已不能修改單據(jù)明細(xì)數(shù)據(jù)),則將業(yè)務(wù)單據(jù)進(jìn)行json 或xml 格式處理。

        以退藥單為示例:

        2.5.2 存儲(chǔ)單據(jù)結(jié)果集

        將格式化的業(yè)務(wù)單據(jù)數(shù)據(jù)存儲(chǔ)于“業(yè)務(wù)單據(jù)包”表中,并將該條數(shù)據(jù)與業(yè)務(wù)單據(jù)表進(jìn)行關(guān)聯(lián)。關(guān)鍵代碼如下:

        2.5.3 單據(jù)查詢結(jié)果集

        查詢某單據(jù)時(shí),根據(jù)關(guān)聯(lián)的業(yè)務(wù)單據(jù)ID 進(jìn)行“業(yè)務(wù)單據(jù)包”表的數(shù)據(jù)查詢,判斷“業(yè)務(wù)單據(jù)包”表中是否已存儲(chǔ)業(yè)務(wù)單據(jù)(兼容歷史數(shù)據(jù)沒(méi)有存儲(chǔ)單據(jù)結(jié)果集的情況),關(guān)鍵代碼如下:

        2.5.4 單據(jù)結(jié)果集反序列化

        將查詢到的結(jié)果集進(jìn)行反序列化,生成單據(jù)對(duì)象,為數(shù)據(jù)應(yīng)用提供支持。

        3 結(jié)束語(yǔ)

        綜上所述,本文主要分析了當(dāng)前醫(yī)療信息系統(tǒng)中關(guān)于業(yè)務(wù)單據(jù)查詢存在的問(wèn)題,并較為詳細(xì)的敘述了當(dāng)前常規(guī)使用的優(yōu)化方法,同時(shí)提出了一種“業(yè)務(wù)單據(jù)包”的優(yōu)化方案,并給出了優(yōu)化方案從定義到設(shè)計(jì)實(shí)現(xiàn)的全過(guò)程,此優(yōu)化方案能夠減少業(yè)務(wù)表之間的關(guān)聯(lián),有效提高業(yè)務(wù)單據(jù)數(shù)據(jù)查詢和加載效率。

        猜你喜歡
        序列化字段單據(jù)
        圖書(shū)館中文圖書(shū)編目外包數(shù)據(jù)質(zhì)量控制分析
        如何建構(gòu)序列化閱讀教學(xué)
        甘肅教育(2020年14期)2020-09-11 07:58:36
        第三方單據(jù)辨析
        匯票在信用證項(xiàng)下單據(jù)融資中的作用
        重視單據(jù)的寄送
        Java 反序列化漏洞研究
        作文訓(xùn)練微格化、序列化初探
        CNMARC304字段和314字段責(zé)任附注方式解析
        嘜頭導(dǎo)致單據(jù)“不清潔”?
        無(wú)正題名文獻(xiàn)著錄方法評(píng)述
        av中文字幕潮喷人妻系列| 日本中文字幕人妻精品| 成年网站在线91九色| 亚洲人成网线在线播放va蜜芽| 欧美日韩国产一区二区三区不卡| 国产精品福利小视频| 久久伊人久久伊人久久| 国产内射爽爽大片| 日韩av一区二区三区高清| 精品一区二区三区蜜桃麻豆| 国模无码一区二区三区| 久久香蕉国产线看观看网| 亚洲免费不卡av网站| 日本一级二级三级不卡| 麻豆╳╳╳乱女另类| 久久aⅴ无码一区二区三区| 青青草视频国产在线观看 | 欧美中出在线| 免费在线国产不卡视频| 真实国产精品vr专区| 日韩丰满少妇无码内射| 日韩区在线| 亚洲色图少妇熟女偷拍自拍| 亚洲中文字幕午夜精品| 海角国精产品一区一区三区糖心 | 亚洲熟女一区二区三区不卡 | 国产优质av一区二区三区| 国产日产亚洲系列最新| 理论片87福利理论电影| 尤物yw午夜国产精品视频| 日本最新视频一区二区| 任我爽精品视频在线播放| 欧美一级在线全免费| 亚洲综合色视频在线免费观看| 亚洲av综合av一区二区三区| 东方aⅴ免费观看久久av| 国产成人一区二区三区影院免费| 亚洲乱码一区二区av高潮偷拍的| 国产女人的高潮国语对白| 综合精品欧美日韩国产在线| 精品女同一区二区三区亚洲|