(大慶油田有限責任公司第一采油廠 信息中心,黑龍江 大慶 163000)
數據查詢作為最基礎、最核心的數據庫操作技術,在各行各業已廣泛成熟應用。對于油田企業來說,生產數據查詢貫穿于多個業務管理單元與專業技術領域,是管理人員掌握油水井生產情況、技術人員進行地下分析的重要抓手。
油田采油廠生產數據繁多,針對采出(注水)井的動靜態數據,有多套基于客戶端和Web 網頁端的數據查詢系統,多套系統的切換使用為用戶帶來極大不便,且各系統用戶賬號密碼難以統一管理,為系統帶來安全隱患。
針對以上問題,開發一套基于集成化報表的生產數據查詢系統,以采油礦(隊)動靜態數據作為報表展示對象,結合圖形化數據分析技術,可實現生產數據的查詢、分析與綜合應用,為基層生產管理單位及技術部門提供便捷高效的數據共享平臺。
根據采油廠實際生產情況,整個系統主要由4 個功能模塊組成,即PC端生產數據查詢模塊、移動端生產數據查詢模塊、油水井靜態數據查詢模塊和問題反饋模塊,可以整合用戶權限,采用單點登錄技術保證系統的安全性。通過權限限制,廠級技術管理人員可查詢全廠生產數據,礦級用戶僅可檢索本礦生產數據。同時,可視化的圖表展示功能,能夠更加直觀、清晰地為用戶展示一段時間內單井的生產狀態,為技術人員及管理人員進行數據分析決策提供依據。
油田企業涉及的管理部門多,業務繁雜,涉及多個跨業務的應用系統軟件,如電力系統管理平臺、大維修系統、基建項目管理系統等,每次用戶登錄都需要輸入用戶名和密碼驗證身份,給用戶帶來不好的體驗感,同時易對系統的安全性及穩定性造成破壞。在企業內部有公共平臺的情況下,單點登錄技術便能解決這個問題。它的目的在于依托一個公共平臺,每個用戶通過公共平臺中固定的一個用戶名及密碼,便能訪問企業內部的多個平行系統[1]。
單點登錄需要一個認證服務器,用來管理企業內部所有的用戶身份信息。首先要在公共平臺下統一維護用戶的相關信息,再通過Web Service 對各系統的用戶及權限進行關聯,以實現用戶的統一管理,對各系統的權限進行統一分配[2]。若認證服務器中沒有嘗試訪問的用戶信息,則該用戶無法登錄系統,從而為系統的安全性提供有力保障。
油田生產單位數據繁多,單一的單項數據查詢無法滿足不同業務人員的需求。生產管理者需要查看某口井每天的生產數據,如生產時間、摻水壓力等,而技術人員需要進行分門別類的查詢,如抽油機井、螺桿泵井等各種參數情況,所管轄井一段時期內產液量、產油量、含水的對比情況及各種原因導致油水井無法生產的影響情況等,這些就需要采用動態組合式復雜報表繪制技術滿足不同業務人員的不同需求。
在設計查詢報表時,預留業務人員想要的不同篩選條件,如礦名、隊名、井號、采油方式、日期等,以此作為參數放置到報表引擎的參數面板中,不同人員使用時即可根據參數面板中不同的參數字段自由動態組合,縮小數據選擇范圍,精確到具體的查詢目標。
單純的報表式查詢展示界面雖然能夠滿足業務人員查詢基本數據的需求,但是直觀性、美觀性有所欠缺,對單井一段時期內的生產情況無法做到一目了然,而可視化的圖表展示可以解決這一問題。就單井數據展示而言,通過一段時期內展示的單井產液量、產油量、含水及沉沒度曲線,便能夠看出該井生產狀況、期間參數是否合理,對下一步技術人員對該井采取的針對性措施提供初步指導性意見。
隨著時代的發展,移動辦公已成為企業發展不可或缺的一部分。鑒于生產單位的特殊性,除了技術部門外,生產數據查詢系統更多的是面向基層生產單位使用者,基層員工及管理人員能夠通過手機、平板移動端的實時查詢,突破時間和空間的限制,將數據“裝進口袋”,真正做到實時掌控數據。
集成化報表的移動端可支持iOS 和Android 兩種系統,通過連接服務器,獲取服務器中配置的可訪問報表,判斷登錄人員是否有查看報表的權限,如果有權限,則會根據移動端的展示界面大小通過自適應的方式展示出來。
油田企業的生產數據都存儲于Oracle 數據庫中,每一天的數據量都多達上萬條,油田成立至今產生的數據量十分龐大。生產數據查詢系統的數據都來源于Oracle 數據庫,部分數據還要經過一系列復雜計算轉化得來,如果只應用普通的查詢語句,效率極為低下,導致系統無法正常使用。因此,需要應用Oracle 的存儲過程、定時任務及索引等技術來提高系統的運行效率。
Oracle 提供了很多索引選項,對于一個應用程序來說,選擇正確的索引十分重要,因為大量的數據很有可能引發應用程序死鎖,從而導致數據庫的性能急劇下降甚至造成程序終止。對于生產數據查詢系統來說,由于業務人員多采用聯合多種參數查詢數據,因而組合索引的恰當使用可對系統查詢效率的提高起到極為重要的作用。
Oracle 存儲過程是開發查詢系統時經常使用的方法,它的特點在于可以將需要執行的多條SQL 語句都封裝到一個獨立的單元中,供開發人員隨時調用,既能節省開發軟件時間,又能提高程序的執行效率[3]。Oracle 的定時任務就是可以任意設置固定的間隔時間,到時間就去執行存儲過程,全部由Oracle自動執行。在生產數據查詢系統中,可針對不同情況設置不同存儲間隔;對于動態數據,可設置每0.5 小時數據更新一次;對于靜態數據,可設置1 天執行更新一次;而對于其中涉及的復雜計算,可以將時間設置到非工作時間執行,不影響第二天業務人員對系統的正常使用。
生產數據查詢系統主要由4 大功能模塊組成,分別是PC端的油水井動態生產數據模塊、移動端油水井動態生產數據查詢模塊、PC 端油水井靜態數據查詢模塊和問題反饋模塊。
PC 端油水井動態生產數據模塊包含了油水井的日數據、單井日報月報、開關井查詢、油水井日旬月對比等功能,可根據礦名、隊名、井號和日期等參數進行單井的生產數據篩選與查詢。同時,開發了數據鉆取功能,點擊單井井號便可進入該井的綜合開采曲線頁面中,通過調整不同的日期年份參數,就可以用可視化的方式直觀看到該井過去某一時間到現在的生產情況;單井月報界面中,點擊月份即可進入單井整個月的日數據頁面中,無須再通過目錄樹中轉。
移動端油水井動態生產數據查詢模塊同PC 端基本功能保持一致,但僅選擇了使用頻率較高的必要數據列,采取凍結模式滑屏顯示數據,為移動端用戶帶來良好的體驗感。
PC 端油水井靜態數據查詢模塊類似于單井的數據搜索引擎,打造單井“百科全書”,實現油水井靜態信息的一鍵查詢全覆蓋。既涵蓋各類靜態地質信息,如驅油方式、開采層位、飽和壓力、地層系數等,又能夠清晰追蹤到該井從鉆井開始的一切靜態數據。
問題反饋模塊用來收集用戶在應用系統過程中發現的問題和建議,便于開發人員對共性問題進行系統功能的改進升級。
生產數據查詢系統,在B/S 的架構設計下,應用集成化的報表平臺,實現了多層級、多維度的采油廠生產數據分析查詢及可視化圖表展示功能。同時,移動端的開發讓數據查詢打破了地域和時間限制,為各級技術、管理及基層工作人員提供了更為便捷、高效的數據查詢通道,為進一步挖掘數據價值打下堅實基礎。生產數據查詢系統全面應用后,小隊級員工巡井檢查時也能夠通過手機端查詢油水井相關生產數據,根據當前井的各項生產參數判斷是否正常運行;各業務人員可按照想要查詢的數據自行設置參數選項,快速高效地查詢數據。
系統以油水井動靜態數據、站庫日數據為切入點,將井、站數據整合到一個統一的查詢系統中;融合單井的可視化圖表展示功能,單井階段性生產狀況趨勢一目了然;單點登錄保障系統安全,分權查詢實現數據管控;多層級的數據鉆取替代了以往的目錄樹中轉,為業務人員使用提供便利;同時,移動端的查詢更是做到了把數據“裝進口袋”,實現生產狀況時時心中有數、處處盡在掌握;系統提供單井數據參數接口,便于廠內其他系統通過參數調用查詢單井數據。
整個系統數據源頭達到統一,層級穿透便于使用,圖表展示助于分析,分權查詢實現管控,數據安全得到保障,為廠內各級員工提供了高效、便捷的以井、站為核心的一體化、可視化查詢分析系統。