莫兵 廣西交通職業(yè)技術(shù)學(xué)院
孤島采油廠生產(chǎn)信息網(wǎng)絡(luò)遠(yuǎn)程數(shù)據(jù)庫訪問模型
莫兵 廣西交通職業(yè)技術(shù)學(xué)院
Client/Server計(jì)算模型的快速發(fā)展,逐步衍生出了JDBC技術(shù),JDBC是Java語言和ODBC技術(shù)的融合,JDBC結(jié)構(gòu)主要由JDBCAPI和JDBCDriverAPI組成。JDBCAPI功能模塊中包含許多數(shù)據(jù)庫操作常用的接口,負(fù)責(zé)建立數(shù)據(jù)庫連接,實(shí)現(xiàn)對孤島采油廠生產(chǎn)信息網(wǎng)絡(luò)遠(yuǎn)程數(shù)據(jù)庫的訪問。JavaIDL網(wǎng)絡(luò)技術(shù)主要是為企業(yè)客戶和服務(wù)器應(yīng)用提供軟件基礎(chǔ),實(shí)現(xiàn)Java IDL應(yīng)用程序與非Java程序以及其他程序集成使用。采油廠生產(chǎn)信息包括站場、井、運(yùn)行通道等方面的數(shù)據(jù),孤島采油廠管轄區(qū)大,生產(chǎn)信息網(wǎng)絡(luò)數(shù)據(jù)庫龐大,利用遠(yuǎn)程數(shù)據(jù)庫訪問模型可以大大提高生產(chǎn)效率。
孤島采油廠;生產(chǎn)信息;遠(yuǎn)程數(shù)據(jù)庫;訪問模型
孤島采油廠管轄區(qū)有孤島、墾利等6個(gè)油田,據(jù)計(jì)算,管轄區(qū)面積為1005km2,年生產(chǎn)原油396×104t。孤島采油廠油氣生產(chǎn)依賴于電力系統(tǒng),生產(chǎn)信息網(wǎng)絡(luò)龐大,利用遠(yuǎn)程數(shù)據(jù)庫訪問模型可以提高數(shù)據(jù)庫的訪問調(diào)用速度。近年來,孤島采油廠信息化建設(shè)的總體要求正在逐步推進(jìn),信息化建設(shè)可為實(shí)現(xiàn)可持續(xù)發(fā)展提供技術(shù)支持。根據(jù)總體要求,為實(shí)現(xiàn)“優(yōu)化勘探開發(fā),協(xié)同生產(chǎn)運(yùn)行,整合經(jīng)營管理,支持領(lǐng)導(dǎo)決策”全網(wǎng)上操作的目標(biāo),在采油廠生產(chǎn)信息網(wǎng)絡(luò)中建立遠(yuǎn)程數(shù)據(jù)庫訪問模型顯得尤為重要,這將有效提升生產(chǎn)信息網(wǎng)絡(luò)訪問效率,實(shí)現(xiàn)全網(wǎng)上操作的目標(biāo)。
隨著Intranet的數(shù)據(jù)庫應(yīng)用系統(tǒng)的頻繁使用,采油廠出現(xiàn)了遠(yuǎn)程分布式數(shù)據(jù)庫訪問困難的問題,目前實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)庫訪問的手段主要是CGI和JDBC技術(shù)。CGI使用十分廣泛,是通過Web服務(wù)器端運(yùn)行的程序,將客戶端格式化的數(shù)據(jù)提交給數(shù)據(jù)庫服務(wù)器,接收查詢結(jié)果后,轉(zhuǎn)化為HTML格式,再由HTTP回傳到客戶機(jī)來實(shí)現(xiàn)數(shù)據(jù)庫的訪問。但CGI的缺點(diǎn)是響應(yīng)速度慢,無平臺移植,實(shí)時(shí)交互能力差,無安全保障,直接制約著其處理大批數(shù)據(jù)的靈活性、快速性以及數(shù)據(jù)的安全。Client/Server計(jì)算模型的快速發(fā)展,逐步衍生出了JDBC技術(shù),JDBC是Java語言和ODBC技術(shù)的融合[1-2],相對于CGI技術(shù),更多的商家首選JDBC,其強(qiáng)大的兼容性以及靈活性,聯(lián)合Java安全機(jī)制,具有良好的數(shù)據(jù)庫連接性能,可為數(shù)據(jù)庫應(yīng)用提供極高的安全保障。JDBC的優(yōu)勢在于:
(1)JDBC技術(shù)中的應(yīng)用程序,無論前端或后端實(shí)現(xiàn)都與平臺無關(guān)。
(2)借助java語言可以實(shí)現(xiàn)JDBC對數(shù)據(jù)庫的異步訪問,為數(shù)據(jù)庫的操作以及通信安全提供保障。
(3)JDBC的應(yīng)用程序具有獨(dú)立的數(shù)據(jù)庫服務(wù)器,可提供通信標(biāo)準(zhǔn),并且可獲得數(shù)據(jù)庫廠家的支持。
2.1 JDBC結(jié)構(gòu)
JDBC結(jié)構(gòu)主要由JDBCAPI和JDBCDriverAPI組成。JDBCAPI主要是實(shí)現(xiàn)與JDBCManager之間的通信功能,JDBCDriverAPI主要是實(shí)現(xiàn)數(shù)據(jù)庫驅(qū)動程序與JDBCManager之間的通信功能,也可建立新的數(shù)據(jù)庫連接,實(shí)現(xiàn)全局SQL數(shù)據(jù)庫快捷訪問[3]。JDBC結(jié)構(gòu)示意圖如圖1所示。
圖1 JDBC結(jié)構(gòu)示意
JDBCAPI功能模塊中包含許多數(shù)據(jù)庫操作常用的接口,負(fù)責(zé)建立數(shù)據(jù)庫連接,實(shí)現(xiàn)對孤島采油廠生產(chǎn)信息網(wǎng)絡(luò)遠(yuǎn)程數(shù)據(jù)庫的訪問。JDBCDriver API主要由JDBC—ODBCBridgeDriver、NativeAPI Partly—JavaDriver、NetProtocolAll—JavaDriver以及NativeProtocolAll—JavaDriver等四部分組成,JDBCDriverAPI具有成本低、規(guī)模小、高效率等優(yōu)點(diǎn),支持ODBC接口,支持SQLServer、Oracle、Sybase等軟件產(chǎn)品。上述四部分的融合應(yīng)用,可以實(shí)現(xiàn)靈活地訪問不同的DBMS,直接訪問專用數(shù)據(jù)庫,以及實(shí)現(xiàn)Intranet遠(yuǎn)程數(shù)據(jù)庫訪問,程序簡易,是管理和訪問桌面數(shù)據(jù)庫的第一選擇。
2.2 Java網(wǎng)絡(luò)技術(shù)與對象模型
采油廠生產(chǎn)信息網(wǎng)絡(luò)數(shù)據(jù)傳輸采用有線、無線傳輸相結(jié)合的方法。對于網(wǎng)絡(luò)線路鋪設(shè)較完善的區(qū)域,傳統(tǒng)的有線傳輸模式可以保證數(shù)據(jù)穩(wěn)定、完整的傳輸;然而,對于網(wǎng)絡(luò)線路鋪設(shè)欠完備、設(shè)備不宜引線的區(qū)域,無線傳輸模式可以實(shí)現(xiàn)最大范圍的數(shù)據(jù)收集。
JavaIDL網(wǎng)絡(luò)技術(shù)主要是為企業(yè)客戶和服務(wù)器應(yīng)用提供軟件基礎(chǔ),實(shí)現(xiàn)JavaIDL應(yīng)用程序與非Java程序以及其他程序集成使用,它是純Java對象請求代理系統(tǒng)結(jié)構(gòu),不是程序語言,而是一種描述對象的接口,獨(dú)立于程序語言之外,并且JavaIDL的優(yōu)點(diǎn)在于可以調(diào)用遠(yuǎn)程服務(wù)器上的CORBA對象。JavaIDL主要包括類屬(Generic)ORB、Idlto-Java和Nameserv。ORB系統(tǒng)運(yùn)行的核心是內(nèi)核,以一種獨(dú)立的Java形式或者支撐Java瀏覽器運(yùn)行各種小的應(yīng)用程序。
Java分布式對象模型主要是實(shí)現(xiàn)不同空間、不同位置、不同主機(jī)之間的相互通信。Sockets可以提供靈活的通信平臺,但是其在遵循應(yīng)用級協(xié)議的基礎(chǔ)上,才能通過編碼實(shí)現(xiàn)客戶與服務(wù)器信息的交換,而且在此過程中協(xié)議設(shè)計(jì)繁瑣,出錯(cuò)率高。RPC可以完全規(guī)避Sockets自身的不足,在使用過程中,不必直接使用Sockets,通過打包調(diào)用參數(shù),傳輸給遠(yuǎn)程目標(biāo);唯一不足的是RPC在不同地址、不同空間數(shù)據(jù)通信上并不適用。RMI這種分布式對象系統(tǒng)可以很好得匹配對象調(diào)用語義,在適應(yīng)性上優(yōu)于Sockets和RPC。RMI系統(tǒng)結(jié)構(gòu)示意圖如圖2所示。
RMI系統(tǒng)遠(yuǎn)程調(diào)用的方式:從上至下,直到客戶端傳輸層,再由下至上,從傳輸層到服務(wù)器。實(shí)際上,訪問遠(yuǎn)程對象的渠道主要是遠(yuǎn)程對象的樁或代理,樁主要是實(shí)現(xiàn)對象的遠(yuǎn)程接口,在遠(yuǎn)程引用層的協(xié)助下,將數(shù)據(jù)信息傳輸給服務(wù)對象。
圖2 RMI系統(tǒng)結(jié)構(gòu)示意
采油廠生產(chǎn)信息包括站場、井、運(yùn)行通道等方面的數(shù)據(jù),孤島采油廠管轄區(qū)大,生產(chǎn)信息網(wǎng)絡(luò)數(shù)據(jù)庫龐大,利用遠(yuǎn)程數(shù)據(jù)庫訪問模型可以大大提高生產(chǎn)效率。
3.1 訪問模型功能
(1)訪問權(quán)限設(shè)置功能。主要分為操作員、管理員以及系統(tǒng)管理,使用密碼進(jìn)行訪問。
(2)遠(yuǎn)程訪問。采油廠生產(chǎn)運(yùn)行數(shù)據(jù)量大,遠(yuǎn)程數(shù)據(jù)庫訪問模型可以實(shí)現(xiàn)不同地址、不同空間數(shù)據(jù)庫信息的通信和交流。
(3)遠(yuǎn)程運(yùn)行數(shù)據(jù)查詢功能。日常運(yùn)行的歷史數(shù)據(jù)可以立即查詢,處理和備份各種數(shù)據(jù)報(bào)表,以便管理人員及時(shí)查閱。
(4)遠(yuǎn)程檢測功能。通過監(jiān)控系統(tǒng)實(shí)時(shí)檢測并記錄運(yùn)行參數(shù),包括溫度、壓力、電壓、電流、液面、示功圖等。
(5)報(bào)警功能。井場設(shè)施被破壞或者被盜都能立即啟動報(bào)警系統(tǒng),對于超出范圍的數(shù)據(jù),系統(tǒng)將自動保存。
(6)輔助功能。通過該功能可以遠(yuǎn)程監(jiān)控液面過低、管道堵塞、電壓不穩(wěn)等異常情況,同時(shí)將異常信號傳回中心進(jìn)行處理備案。
3.2 模型應(yīng)用
(1)訪問方便。通過該訪問模型,可以及時(shí)發(fā)現(xiàn)異常數(shù)據(jù),并進(jìn)行分析,能夠及時(shí)調(diào)整井場工作制度,避免生產(chǎn)間斷,提高采油井的工作效率,進(jìn)而保障生產(chǎn)的正常運(yùn)行。
(2)遠(yuǎn)程監(jiān)控。通過生產(chǎn)信息網(wǎng)絡(luò)遠(yuǎn)程數(shù)據(jù)庫訪問模型,可以遠(yuǎn)程監(jiān)控每一口油井,進(jìn)行單井能耗計(jì)算,同時(shí)對于不合理的環(huán)節(jié)進(jìn)行調(diào)整,減少空抽能耗損失。
(3)井場盜竊損失。本系統(tǒng)能夠?qū)畧龇秶鷥?nèi)的情況進(jìn)行實(shí)時(shí)監(jiān)控,遇到異常情況及時(shí)啟動報(bào)警機(jī)制,及時(shí)了解井場運(yùn)行狀況,有效地避免井場被盜現(xiàn)象。
(4)管理質(zhì)量提升。遠(yuǎn)程數(shù)據(jù)庫訪問模型的實(shí)現(xiàn),改變了以前落伍的人工管理方式,通過訪問數(shù)據(jù)庫,觀察各個(gè)生產(chǎn)環(huán)節(jié)的運(yùn)行情況,能夠更加全面掌握油井生產(chǎn)情況,遇到異常能夠及時(shí)處理,減少不必要的誤判,提高了油井工作效率。
孤島采油廠生產(chǎn)運(yùn)行信息網(wǎng)絡(luò)包含的生產(chǎn)一線數(shù)據(jù)龐大,單憑人工管理與調(diào)整會影響生產(chǎn)時(shí)效,不能及時(shí)地發(fā)現(xiàn)數(shù)據(jù)庫異常情況,遠(yuǎn)程數(shù)據(jù)庫訪問模型在采油廠生產(chǎn)運(yùn)行信息網(wǎng)絡(luò)中的成功應(yīng)用,已經(jīng)充分證明是一種提高采油廠生產(chǎn)運(yùn)行水平的有效措施。遠(yuǎn)程數(shù)據(jù)庫訪問模型可以實(shí)現(xiàn)不同地址、不同空間、不同主機(jī)之間的數(shù)據(jù)庫信息通信和交流,可以方便地掌握數(shù)據(jù)庫動態(tài),生產(chǎn)實(shí)情,對保證油田持續(xù)穩(wěn)定生產(chǎn)具有重要的作用。
[1]王娟.油田數(shù)字化的異構(gòu)數(shù)據(jù)源整合與集成技術(shù)[J].油氣田地面工程,2014,33(11):10-11.
[2]郝黎明,楊淑堂,陸松,等.遠(yuǎn)程數(shù)據(jù)庫訪問與數(shù)據(jù)傳輸安全技術(shù)研究[J].計(jì)算機(jī)應(yīng)用與軟件,2006(3):15-16.
[3]馬海驕,陳勇智,田煒,等.油氣田數(shù)字化的規(guī)劃、建設(shè)、運(yùn)行維護(hù)與應(yīng)用[J].油氣田地面工程,2013,32(4):10-11.
(欄目主持 關(guān)梅君)
10.3969/j.issn.1006-6896.2015.3.024