本發(fā)明屬于數(shù)據(jù)查詢,特別涉及一種基于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)查詢方法及系統(tǒng)。
背景技術(shù):
1、對于集團(tuán)化運營或連鎖運營的醫(yī)院而言,sql數(shù)據(jù)庫部署在遠(yuǎn)程服務(wù)器(稱之為sql服務(wù)器)上并且為多家醫(yī)院提供數(shù)據(jù)存儲和查詢服務(wù),為了降低sql服務(wù)器的負(fù)載,對于被頻繁查詢(例如,將頻繁查詢定義為:在24小時內(nèi)被查詢次數(shù)超過10次)的醫(yī)療數(shù)據(jù)標(biāo)記為熱數(shù)據(jù),對于熱數(shù)據(jù)一般可以添加到redis數(shù)據(jù)庫中,由于redis數(shù)據(jù)庫為內(nèi)存型數(shù)據(jù)庫,還可以具有更快的查詢速度。因此,現(xiàn)有技術(shù)中,應(yīng)用服務(wù)器檢測到醫(yī)生在查詢終端頻繁查詢某個患者的醫(yī)療數(shù)據(jù)之后,一般會將該患者的醫(yī)療數(shù)據(jù)標(biāo)記為熱數(shù)據(jù)然后添加到redis數(shù)據(jù)庫中,便于降低sql服務(wù)器的負(fù)載,同時具有更快的查詢速度。
2、然而,上述方案確定熱數(shù)據(jù)的方式存在如下不足:在某個患者的醫(yī)療數(shù)據(jù)未被標(biāo)記為熱數(shù)據(jù)時,都需要從sql數(shù)據(jù)庫獲取該患者的醫(yī)療數(shù)據(jù);因此,存在患者的醫(yī)療數(shù)據(jù)被查詢之前,查詢患者醫(yī)療數(shù)據(jù)效率低下的技術(shù)問題。
技術(shù)實現(xiàn)思路
1、本發(fā)明的目的在于至少解決上述問題之一,提供一種基于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)查詢方法及系統(tǒng),能夠在患者的醫(yī)療數(shù)據(jù)被查詢之前,將該患者對應(yīng)的醫(yī)療數(shù)據(jù)標(biāo)記為熱數(shù)據(jù),以提升后續(xù)查詢該患者醫(yī)療數(shù)據(jù)的效率。
2、為了實現(xiàn)上述發(fā)明目的,本發(fā)明提供一種基于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)查詢方法,適用于應(yīng)用服務(wù)器,所述方法包括:
3、獲取新錄入到sql數(shù)據(jù)庫的生理指標(biāo)檢查表格中的目標(biāo)診斷指標(biāo);所述目標(biāo)診斷指標(biāo)為生理指標(biāo)檢查表格中屬于目標(biāo)患者的診斷指標(biāo);
4、基于所述目標(biāo)診斷指標(biāo)確定所述目標(biāo)患者的手術(shù)發(fā)生率;
5、當(dāng)所述目標(biāo)患者的手術(shù)發(fā)生率大于預(yù)設(shè)閾值時,將所述目標(biāo)患者的醫(yī)療數(shù)據(jù)添加到redis數(shù)據(jù)庫中;所述目標(biāo)患者的醫(yī)療數(shù)據(jù)包括hrp系統(tǒng)各模塊采集到的與目標(biāo)患者對應(yīng)的各項數(shù)據(jù);
6、接收到查詢終端發(fā)送的查詢指令時,從redis數(shù)據(jù)庫中獲取目標(biāo)患者的醫(yī)療數(shù)據(jù)并將所述醫(yī)療數(shù)據(jù)返回給查詢終端。
7、作為進(jìn)一步改進(jìn),所述方法還包括:
8、對處于住院狀態(tài)的第一類患者,檢測到第一類患者在sql數(shù)據(jù)庫中的醫(yī)療數(shù)據(jù)更新后,將更新后的數(shù)據(jù)同步到redis數(shù)據(jù)庫;在檢測到第一類患者處于出院狀態(tài)時,將第一類患者在redis數(shù)據(jù)庫中的醫(yī)療數(shù)據(jù)刪除;
9、對于未處于住院狀態(tài)的第二類患者,檢測到第二類患者在sql數(shù)據(jù)庫中的醫(yī)療數(shù)據(jù)更新或在redis數(shù)據(jù)庫上保存時長大于過期時長時,將第二類患者在redis數(shù)據(jù)庫中的醫(yī)療數(shù)據(jù)刪除。
10、作為進(jìn)一步改進(jìn),所述基于所述目標(biāo)診斷指標(biāo)確定所述目標(biāo)患者的做手術(shù)概率,具體包括:
11、將目標(biāo)診斷指標(biāo)輸入到手術(shù)預(yù)測模型中;其中,所述手術(shù)預(yù)測模型為使用多組訓(xùn)練數(shù)據(jù)訓(xùn)練得到的,所述多組訓(xùn)練數(shù)據(jù)包括第一類訓(xùn)練數(shù)據(jù)和第二類訓(xùn)練數(shù)據(jù),所述第一類訓(xùn)練數(shù)據(jù)中的每組訓(xùn)練數(shù)據(jù)均包括:與目標(biāo)患者屬于同一疾病的歷史病歷中已經(jīng)做了手術(shù)的患者對應(yīng)的生理指標(biāo)檢查表格中的診斷指標(biāo)構(gòu)成的診斷指標(biāo)數(shù)組以及標(biāo)識該診斷指標(biāo)數(shù)組對應(yīng)的患者需要做手術(shù)的標(biāo)簽;所述第二類訓(xùn)練數(shù)據(jù)中的每組訓(xùn)練數(shù)據(jù)均包括:與目標(biāo)患者屬于同一疾病的歷史病歷中并沒有做手術(shù)的患者對應(yīng)的生理指標(biāo)檢查表格中的診斷指標(biāo)構(gòu)成的診斷指標(biāo)數(shù)組以及標(biāo)識該診斷指標(biāo)數(shù)組對應(yīng)的患者不需要做手術(shù)的標(biāo)簽;
12、根據(jù)所述手術(shù)預(yù)測模型輸出的結(jié)果確定所述目標(biāo)患者的手術(shù)發(fā)生率。
13、作為進(jìn)一步改進(jìn),在確定所述目標(biāo)患者的手術(shù)發(fā)生率大于預(yù)設(shè)閾值時,所述方法還包括:
14、獲取與目標(biāo)患者屬于同一疾病的多份歷史診療報告;
15、計算所述多份歷史診療報告與所述目標(biāo)患者的病歷的參考相似分?jǐn)?shù);
16、按照所述參考相似分?jǐn)?shù)高低進(jìn)行排序得到排序結(jié)果;
17、接收到查詢終端發(fā)送的參考指令時,按照所述排序結(jié)果將各歷史診療報告返回給查詢終端。
18、作為進(jìn)一步改進(jìn),根據(jù)以下公式一計算所述多份歷史診療報告與所述目標(biāo)患者的病歷的參考相似分?jǐn)?shù)sab:
19、公式一:
20、其中,n為診斷指標(biāo)數(shù)量;ai為目標(biāo)患者的病歷中第i項診斷指標(biāo)的數(shù)值,bi為多份歷史診療報告中的一份歷史診療報告第i項診斷指標(biāo)的數(shù)值,f(ai,bi)為手術(shù)關(guān)鍵因子判斷函數(shù),w(ai,bi)為關(guān)鍵因子權(quán)重函數(shù)。
21、作為進(jìn)一步改進(jìn),根據(jù)以下公式二確定手術(shù)關(guān)鍵因子判斷函數(shù)f(ai,bi)的值:
22、公式二:
23、其中,qi為第i項診斷指標(biāo)的數(shù)值的異常范圍集合,otherwise表示其他情況。
24、作為進(jìn)一步改進(jìn),根據(jù)以下公式三確定關(guān)鍵因子權(quán)重函數(shù)w(ai,bi)的值:
25、公式三:
26、其中,qi為第i項診斷指標(biāo)的數(shù)值的異常范圍集合;p為第一類診斷指標(biāo)對應(yīng)的序號集合,r為第二類診斷指標(biāo)對應(yīng)的序號集合,otherwise表示其他情況。
27、作為進(jìn)一步改進(jìn),所述redis數(shù)據(jù)庫部署在redis服務(wù)器上,所述sql數(shù)據(jù)庫部署在sql服務(wù)器上,所述redis服務(wù)器、sql服務(wù)器與所述應(yīng)用服務(wù)器三者處于同一個局域網(wǎng)內(nèi)。
28、作為進(jìn)一步改進(jìn),在得到所述排序結(jié)果之后,所述方法還包括:
29、按照所述排序結(jié)果,在查詢終端的界面顯示每份歷史診療報告的各項診斷指標(biāo);
30、響應(yīng)于對相應(yīng)診斷指標(biāo)的選中操作,在查詢終端顯示與被選中的診斷指標(biāo)對應(yīng)的手術(shù)記錄內(nèi)容。
31、另一方面,本發(fā)明提供一種基于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)查詢系統(tǒng),包括存儲器、處理器及存儲在存儲器上的計算機(jī)程序,所述處理器執(zhí)行所述計算機(jī)程序,以實現(xiàn)上述方法的步驟。
32、再一方面,本發(fā)明提供一種計算機(jī)可讀存儲介質(zhì),其上存儲有計算機(jī)程序/指令,該計算機(jī)程序/指令被處理器執(zhí)行時實現(xiàn)上述方法的步驟。
33、有益效果:
34、相較于現(xiàn)有技術(shù)中,必須對某個患者的醫(yī)療數(shù)據(jù)進(jìn)行查詢之后才能對應(yīng)的醫(yī)療數(shù)據(jù)添加到redis數(shù)據(jù)庫中,本申請?zhí)峁┑囊环N基于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)查詢方法及系統(tǒng)能夠在患者的醫(yī)療數(shù)據(jù)被查詢之前就對該醫(yī)療數(shù)據(jù)進(jìn)行分析,預(yù)測該患者需要進(jìn)行手術(shù)的概率,如果判斷該患者需要進(jìn)行手術(shù),則在該患者的醫(yī)療數(shù)據(jù)被查詢終端查詢之前就添加到redis數(shù)據(jù)庫中,提升后續(xù)查詢該患者醫(yī)療數(shù)據(jù)的效率。
1.一種基于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)查詢方法,適用于應(yīng)用服務(wù)器,其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的一種基于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)查詢方法,其特征在于,所述方法還包括:
3.根據(jù)權(quán)利要求1所述的一種基于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)查詢方法,其特征在于,所述基于所述目標(biāo)診斷指標(biāo)確定所述目標(biāo)患者的做手術(shù)概率,具體包括:
4.根據(jù)權(quán)利要求1所述的一種基于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)查詢方法,其特征在于,在確定所述目標(biāo)患者的手術(shù)發(fā)生率大于預(yù)設(shè)閾值時,所述方法還包括:
5.根據(jù)權(quán)利要求4所述的一種基于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)查詢方法,其特征在于,根據(jù)以下公式一計算所述多份歷史診療報告與所述目標(biāo)患者的病歷的參考相似分?jǐn)?shù)sab:
6.根據(jù)權(quán)利要求5所述的一種基于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)查詢方法,其特征在于,根據(jù)以下公式二確定手術(shù)關(guān)鍵因子判斷函數(shù)f(ai,bi)的值:
7.根據(jù)權(quán)利要求5所述的一種基于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)查詢方法,其特征在于,根據(jù)以下公式三確定關(guān)鍵因子權(quán)重函數(shù)w(ai,bi)的值:
8.根據(jù)權(quán)利要求1所述的一種基于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)查詢方法,其特征在于,所述redis數(shù)據(jù)庫部署在redis服務(wù)器上,所述sql數(shù)據(jù)庫部署在sql服務(wù)器上,所述redis服務(wù)器、sql服務(wù)器與所述應(yīng)用服務(wù)器三者處于同一個局域網(wǎng)內(nèi)。
9.根據(jù)權(quán)利要求1所述的一種基于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)查詢方法,其特征在于,在得到所述排序結(jié)果之后,所述方法還包括:
10.一種基于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)查詢系統(tǒng),包括存儲器、處理器及存儲在存儲器上的計算機(jī)程序,其特征在于,所述處理器執(zhí)行所述計算機(jī)程序,以實現(xiàn)權(quán)利要求1至9任意一項基于內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)查詢方法的步驟。