一種異構(gòu)實(shí)時(shí)數(shù)據(jù)庫的統(tǒng)一應(yīng)用程序編程接口實(shí)現(xiàn)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及電力系統(tǒng)自動化技術(shù)領(lǐng)域,特別是一種異構(gòu)實(shí)時(shí)數(shù)據(jù)庫的統(tǒng)一應(yīng)用程 序編程接口實(shí)現(xiàn)方法。
【背景技術(shù)】
[0002] 實(shí)時(shí)數(shù)據(jù)庫,一種專門用于處理和存儲隨時(shí)間變化的值和狀態(tài)量的數(shù)據(jù)庫,不同 于傳統(tǒng)的關(guān)系數(shù)據(jù)庫所存儲的持久化信息,實(shí)時(shí)數(shù)據(jù)庫主要用于存儲時(shí)間序列數(shù)據(jù)。在流 程行業(yè)中,大量使用實(shí)時(shí)數(shù)據(jù)庫系統(tǒng)進(jìn)行控制系統(tǒng)監(jiān)控,系統(tǒng)先進(jìn)控制和優(yōu)化控制,并為企 業(yè)的生產(chǎn)管理和調(diào)度、數(shù)據(jù)分析、決策支持及遠(yuǎn)程在線瀏覽提供實(shí)時(shí)數(shù)據(jù)服務(wù)和多種數(shù)據(jù) 管理功能。實(shí)時(shí)數(shù)據(jù)庫已經(jīng)成為企業(yè)信息化的基礎(chǔ)數(shù)據(jù)平臺,可直接實(shí)時(shí)采集、獲取企業(yè)運(yùn) 行過程中的各種數(shù)據(jù),并將其轉(zhuǎn)化為對各類業(yè)務(wù)有效的公共信息,滿足企業(yè)生產(chǎn)管理、企業(yè) 過程監(jiān)控、企業(yè)經(jīng)營管理之間對實(shí)時(shí)信息完整性、一致性、安全共享的需求,可為企業(yè)自動 化系統(tǒng)與管理信息系統(tǒng)間建立起信息溝通的橋梁。幫助企業(yè)的各專業(yè)管理部門利用這些關(guān) 鍵的實(shí)時(shí)信息,提高生產(chǎn)銷售的營運(yùn)效率。實(shí)時(shí)數(shù)據(jù)庫與關(guān)系數(shù)據(jù)庫一樣,同為企業(yè)信息化 建設(shè)的支撐軟件,廣泛應(yīng)用于電力、航空、國防、石油、石化、交通、冶金、水情監(jiān)測、水利、環(huán) 保等重要的行業(yè)。
[0003] 目前國內(nèi)市場上的實(shí)時(shí)數(shù)據(jù)庫多種多樣。國外產(chǎn)品包括0SI公司的PI、Instep公司 的 eDNA、Honeywel 1 的PHD、AspenTech的 Inf oplus 以及Wonderware 的 InSQL等。國內(nèi)包括瑞中 數(shù)據(jù)的HighSoon、中科院軟件所的Agilor、浙大中控的ESP-iSYS、紫金橋軟件的RealDB、布 爾科技的BL_RTS、南京朗坤軟件的LiRTDB等。雖然數(shù)據(jù)庫的實(shí)現(xiàn)形式上大同小異,但是對外 提供的接口和服務(wù)存在差異,應(yīng)用程序編程接口上也形式多樣。由于接口形式上的差異,當(dāng) 同一套解決方案或者平臺建設(shè)過程中存在多種異構(gòu)的實(shí)時(shí)數(shù)據(jù)庫時(shí),異構(gòu)實(shí)時(shí)數(shù)據(jù)庫的存 在增加了數(shù)據(jù)訪問的難度,迫切需要提供一種異構(gòu)實(shí)時(shí)數(shù)據(jù)庫的統(tǒng)一應(yīng)用程序編程接口實(shí) 現(xiàn)方法。
【發(fā)明內(nèi)容】
[0004] 針對現(xiàn)有技術(shù)中存在的問題,本發(fā)明提供了一種異構(gòu)實(shí)時(shí)數(shù)據(jù)庫的統(tǒng)一應(yīng)用程序 編程接口實(shí)現(xiàn)方法。通過規(guī)范應(yīng)用程序編程接口屏蔽系統(tǒng)通訊、存貯、標(biāo)識、表達(dá)、技術(shù)架構(gòu) 等實(shí)時(shí)信息使用環(huán)節(jié)中的各種技術(shù)差異,以規(guī)范的方式進(jìn)行數(shù)據(jù)的共享訪問;通過統(tǒng)一的 接口規(guī)范,動態(tài)更換各數(shù)據(jù)庫廠商提供的統(tǒng)一數(shù)據(jù)訪問接口(UAPI),從而實(shí)現(xiàn)數(shù)據(jù)的透明 接入和訪問。
[0005] 本發(fā)明的目的通過以下技術(shù)方案實(shí)現(xiàn)。
[0006] -種異構(gòu)實(shí)時(shí)數(shù)據(jù)庫的統(tǒng)一應(yīng)用程序編程接口實(shí)現(xiàn)方法,步驟包括:
[0007] 1)定義異構(gòu)實(shí)時(shí)數(shù)據(jù)庫應(yīng)用程序編程接口規(guī)范編制,所述的異構(gòu)實(shí)時(shí)數(shù)據(jù)庫應(yīng)用 程序編程接口包括:連接維護(hù)應(yīng)用程序編程接口、測點(diǎn)管理應(yīng)用程序編程接口、測點(diǎn)數(shù)據(jù)讀 寫應(yīng)用程序編程接口和統(tǒng)計(jì)分析應(yīng)用程序編程接口;所述的連接維護(hù)應(yīng)用程序編程接口用 于異構(gòu)實(shí)時(shí)數(shù)據(jù)庫的連接和斷開,所述的連接維護(hù)應(yīng)用程序編程接口包括如下表所示接 P :
[0009] 所述的測點(diǎn)管理應(yīng)用程序編程接口用于測點(diǎn)的增刪改查,所述的測點(diǎn)管理應(yīng)用程 序編程接口包括如下表所示接口:
[0010]
[0011]所述的測點(diǎn)數(shù)據(jù)讀寫應(yīng)用程序編程接口數(shù)據(jù)的讀寫,所述的測點(diǎn)數(shù)據(jù)讀寫應(yīng)用程 序編程接口包括如下表所示接口:
[0014]所述的統(tǒng)計(jì)分析應(yīng)用程序編程接口用于對數(shù)據(jù)進(jìn)行統(tǒng)計(jì)和分析,所述的統(tǒng)計(jì)分析 應(yīng)用程序編程接口包括如下表所示接口:
[0016] 2)遵循步驟1)中的異構(gòu)實(shí)時(shí)數(shù)據(jù)庫應(yīng)用程序編程接口規(guī)范設(shè)計(jì)并實(shí)現(xiàn)自身實(shí)時(shí) 數(shù)據(jù)庫的UAPI,當(dāng)應(yīng)用層調(diào)用不同廠商的應(yīng)用程序編程接口時(shí),執(zhí)行重新加載相應(yīng)廠商的 動態(tài)庫指令;
[0017] 3)通過在客戶端增加緩存實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)庫接入和訪問效率的優(yōu)化:緩存分測點(diǎn)緩 存和數(shù)據(jù)緩存;數(shù)據(jù)接入時(shí),通過查詢客戶端緩存測點(diǎn)與異構(gòu)數(shù)據(jù)的映射關(guān)系,感知測點(diǎn)的 位置,同時(shí)數(shù)據(jù)接入時(shí)可實(shí)現(xiàn)數(shù)據(jù)緩存;
[0018] 4)當(dāng)客戶端接口確認(rèn)服務(wù)端已經(jīng)接收到數(shù)據(jù)并將數(shù)據(jù)包從緩存文件中刪除;當(dāng)在 發(fā)送請求報(bào)文的過程中網(wǎng)絡(luò)通訊或者數(shù)據(jù)處理服務(wù)器發(fā)生故障,客戶端接口會持續(xù)緩存請 求報(bào)文,并不斷生成新的緩存文件;當(dāng)數(shù)據(jù)通訊恢復(fù)正常后,客戶端接口會逐步將緩存的數(shù) 據(jù)重新發(fā)送到服務(wù)端;
[0019] 5)當(dāng)訪問數(shù)據(jù)查詢接口時(shí),建立數(shù)據(jù)緩存,則直接從緩存中取數(shù)據(jù),當(dāng)緩存中不存 在數(shù)據(jù),再發(fā)起到具體異構(gòu)實(shí)時(shí)數(shù)據(jù)庫的數(shù)據(jù)訪問請求;
[0020] 6)當(dāng)需要使用其他的實(shí)時(shí)數(shù)據(jù)庫時(shí),只需要將數(shù)據(jù)庫名稱進(jìn)行替換,即可實(shí)現(xiàn)實(shí) 時(shí)數(shù)據(jù)庫的異構(gòu)功能。
[0021] 進(jìn)一步的,所述的步驟1)是基于HS_API定義異構(gòu)實(shí)時(shí)數(shù)據(jù)庫應(yīng)用程序編程接口規(guī) 范編制,所述的步驟2)實(shí)現(xiàn)自身實(shí)時(shí)數(shù)據(jù)庫為HS_U。
[0022] 相比于現(xiàn)有技術(shù),本發(fā)明的優(yōu)點(diǎn)在于:對外提供了一套統(tǒng)一的異構(gòu)實(shí)時(shí)庫應(yīng)用程 序編程接口規(guī)范,滿足了各業(yè)務(wù)應(yīng)用通過異構(gòu)實(shí)時(shí)數(shù)據(jù)進(jìn)行統(tǒng)一存儲、整合、共享、以及統(tǒng) 一和標(biāo)準(zhǔn)訪問的需求,業(yè)務(wù)系統(tǒng)無需知道數(shù)據(jù)庫的具體廠商,從而實(shí)現(xiàn)了異構(gòu)實(shí)時(shí)庫數(shù)據(jù) 的統(tǒng)一接入和訪問。
【附圖說明】
[0023] 圖1是異構(gòu)實(shí)時(shí)數(shù)據(jù)庫接口的透明訪問示意圖。
[0024] 圖2是異構(gòu)實(shí)時(shí)數(shù)據(jù)庫的統(tǒng)一應(yīng)用程序編程接口緩存原理圖。
[0025] 圖3是異構(gòu)實(shí)時(shí)數(shù)據(jù)庫的統(tǒng)一應(yīng)用程序編程接口實(shí)施圖。
[0026] 圖4異構(gòu)實(shí)時(shí)數(shù)據(jù)庫數(shù)據(jù)訪問流程圖。
【具體實(shí)施方式】
[0027] 下面結(jié)合說明書附圖和具體的實(shí)施例,對本發(fā)明作詳細(xì)描述。
[0028] -種異構(gòu)實(shí)時(shí)數(shù)據(jù)庫的統(tǒng)一應(yīng)用程序編程接口實(shí)現(xiàn)方法,步驟包括:
[0029] 1)基于HS_API定義異構(gòu)實(shí)時(shí)數(shù)據(jù)庫應(yīng)用程序編程接口規(guī)范編制,所述的異構(gòu)實(shí)時(shí) 數(shù)據(jù)庫應(yīng)用程序編程接口包括:連接維護(hù)應(yīng)用程序編程接口、測點(diǎn)管理應(yīng)用程序編程接口、