楊冬黎,富 宇,楊 雪
(1.大慶石油學院計算機與信息技術學院,黑龍江大慶163318;2.牡丹江醫學院影像診斷系,黑龍江牡丹江157011)
隨著油田開發及動態分析工作的不斷深入,地質動態分析人員每天需要查詢各類油田開發動態和靜態數據資料.目前動態分析人員進行油水井措施方案編制時所涉及的井位圖、沉積相帶圖、小層數據、射孔數據、完井數據、施工總結、油水井生產數據、各項監測資料等十余種相關資料還處于人工查找、借閱階段;后期進行單井注水方案設計、方案實施情況跟蹤及實施效果統計匯總時也靠人工統計,這種工作方式工作強度大、效率低,因此,如何提高對注水井分散數據的查詢統計是亟待解決的問題.
針對這些問題,本文開發了注水井分散數據統一管理平臺.該平臺實現了動態分析工作需要的數據和資料都可以在網上查詢、應用,使油田動態分析技術人員清楚掌握年度發放的各類方案,同時及時跟蹤方案實施情況,并進行實施后的效果統計分析與報表輸出,減輕動態分析人員工作強度,提高管理和運行效率.
注水井方案調整涉及的數據繁多而且相對比較分散,其中靜態數據、動態數據、油田檢測、井下作業各十余種.并且目前分散在不同oracle服務器上由不同專業人員管理.這種數據源模式利用復雜,數據同步更新較差,所以數據的統一管理和利用有著至關重要的作用.
通過油田注水井用戶對各種動態分析數據及檔案資料進行查詢,首先確定了注水井方案的設計流程,明確了各個設計階段的工作任務及所需要查詢和處理的數據,工作流程圖如圖1所示.

圖1 工作流程圖
平臺由開采現狀圖查詢、油水井效果統計、油井基本信息查詢、水井基本信息查詢、連通關系維護等部分構成.借助于.NET技術、遠程訪問技術、SVG技術和數據庫等技術實現具體功能.下面僅以基于SVG技術實現的“開采現狀圖查詢”這個模塊為例,說明一下平臺中關鍵技術的運用與實現.
SVG是Scalable Vector Graphics的縮寫,是一種基于XML描述二維圖形的圖形應用的語言[1].通過采用SVG技術,摒棄了傳統GIS系統成本高、對安裝客戶數量有限制、安裝維護困難的缺點.采用SVG使系統具有很高的靈活性和運行速度,即能實現按區塊動態構造井位圖,又能實現開采現狀信息的動態顯示.
在SVG的縮寫中,S代表Scalable即可伸縮,其意思是指可以不受單一固定的像素大小的限定增加或減小圖片.V代表Vector即矢量,一個帶有坐標與方向的數學名詞.矢量圖形由基本圖形對象如直線和曲線構成.其幾何的意義是從一個點移動到另一個點,在空間中的表現就是在2維或是3維空間中的一條直線.相比于存儲圖形每一個像素點信息的柵格格式圖像如PNG和JPEG來說,矢量有很大的靈活性.G代表Graphics即圖形,它是真實世界對象的圖形表示.在W3C規范中闡明,SVG由3種對象組成:矢量圖形(如由直線和曲線構成的路徑)、圖像和文本.圖形對象能夠被分組、樣式化、轉移和與先前的渲染對象組合.SVG支持復雜的圖形操作如嵌套、剪切路徑、Alpha版、濾鏡效果、模板對象和動畫效果.使用SVG Document Object Model(DOM)可以實現復雜的交互的SVG應用.DOM提供了訪問SVG所有元素及其屬性、性質.
利用SVG可以實現如下功能:
1)平移/縮放:SVG圖像能夠被平移/縮放而不必返回服務器端請求另一幅圖像并且不會損失圖像質量.這是SVG地圖應用在網絡上的優點.
2)交互:SVG地圖特征在瀏覽器端可以被選擇與交互.用戶在選定的一幅地圖中,選擇對象以及操作所有的圖層而不必返回到服務器.腳本語言可以實現與數據庫的聯接,這樣當鼠標點擊地圖上的對象時,就可以鏈接到數據庫中相應的表.同樣能通過鼠標點擊完成對空間信息的查詢,地圖上特征對象的識別等.
3)選擇元素顯示:結合腳本語言SVG允許交互的選擇顯示信息.
4)動畫:只使用SVG語言就可以實現動畫,就像通過腳本語言和DOM來實現一樣.
1)地圖的縮放、漫游
地圖的縮放[2]、漫游是SVG地圖瀏覽器的重要功能,為達到通過工具條中的按鈕來控制地圖縮放、漫游的目的,可將所有的地圖數據組織在一個地圖分組元素下(該元素的ID屬性可設為Map),即將整個地圖作為一個復合圖形組來看待.在這種情況下,就可通過設置該分組元素的transform屬性來實現地圖的縮放、漫游.transform屬性包含6個參數,分別控制圖形的6種變形,即橫向縮放、縱向縮放、橫向傾斜、縱向傾斜、橫向移動和縱向移動.其中對于縮放、移位參數的設置可分別通過比例Scale(XscaleYscale)和移位translate(Xmove,Ymove)實現.在具體實施時,需注意的是通過比例Scale和移位translate對transform屬性的設置效果是一次性的而不是累加的.此外,通過比例Scale所進行的地圖縮放是以地圖的左上角為基點實施的.因此,要想實現對地圖的縮放、漫游就需要對地圖同時進行比例Scale和移位translate操作.
2)屬性數據的查詢
屬性信息的查詢是地圖瀏覽的一項重要功能,要實現這個功能,首先需要了解屬性數據是如何在SVG文檔中進行組織的.一般來說,屬性數據采用2種方法與圖形進行連接,即外聯法和內嵌法[3].
外聯法是指屬性數據與圖形數據分開存儲,SVG文檔中僅包含地物的圖形數據,而屬性數據存放在服務器端的數據庫中,兩者通過地物標識號進行連接.當在客戶端進行屬性數據查詢時,客戶端可通過地物標識采用相應的技術在服務器端從數據庫中提取相應的數據在客戶端進行顯示.
內嵌法則是將屬性數據與圖形數據包含同一個SVG文件中.
3)圖層的開關
由于在SVG地圖瀏覽器中所操作的SVG地圖是以分層的方式進行組織的,在該數據組織模式中,屬于一個圖層的地理特征數據組織在同一個分組元素下,且該分組元素的ID屬性設置為圖層的名稱,這樣對圖層的顯示控制就比較容易.如圖2所示.

圖2 地理空間數據層次組織模式
SVG中提供了 <g>元素,代表 “Group”(組),用來將一批特征類似的圖像元素定義為一個集合,這與地圖圖層管理的概念是不謀而合的.用戶可以在客戶端通過JavaScript腳本語言來對不同“圖層”的圖像元素來進行操作.
其基本的操作是在 <g>中加入一個屬性數據visibility,然后在JavaScript中定義一個功能函數,利用其來控制 <g>的屬性visibility,將其設成visib le時,就顯示該圖層,將其設成hidden時,就來隱藏該圖層.
“開采現狀圖”是注水井方案編制人員非常常用的輔助工具,以前開發動態人員使用的“開采現狀圖”是用AutoCAD等工具繪制出來的靜態圖紙,它的缺點是:①“開采現狀圖”上的信息是靜態的,不能反映有關井最新的生產狀況;②“開采現狀圖”本身是靜態的,不能按用戶的需求隨意生成.
為了方便開發動態人員在設計注水井方案時可以方便快捷地生成和查詢有關信息,我們利用SVG技術實現了動態構造“開采現狀圖”.
在“開采現狀圖”顯示界面,用戶可以選擇一個或多個區塊、選擇開采現狀的對比時間,系統即可為用戶查詢相應的數據并動態生成相應的“開采現狀圖”,在此圖中,不同井別的數據顯示在不同的圖層上,并且設計相應的操作界面允許用戶進行圖層的打開和關閉操作,以便在井數過多、顯示信息過密的情況下簡化顯示信息.
圖3為放大了的“開采現狀圖”,可以清晰地看出,不同類型的井用不同的顏色表示,油井的開采現狀信息由“液、油、含水、沉沒度”組成,水井的開采現狀信息由“油壓、套壓、配注、實注”組成,為了便于用戶對比,對于油井的四種信息還給出了箭頭描述的趨勢信息.每口井的開采現狀信息還包括壓力信息,油井和水井的開采現狀信息分別如圖4、5所示.
為了便于用戶工作,“開采現狀圖”上還顯示了斷層線、油水分界線等信息.通過“開采現狀圖”,用戶可以直觀地了解井位信息以及直接獲取重要的開采現狀信息,但用戶常常還需要進一步查詢相關井的其它信息,為了便于用戶操作,“開采現狀圖”還具有選擇井的功能,用戶可以通過點擊選擇油井或水井,然后點擊“選定井詳細信息查看”按鈕,即會出現圖6所示的用戶界面,在此界面下,用戶可以直接點擊查詢選定井的相關信息,相應的查詢窗口會出現,“井號”信息已經填好,用戶可以直接進行相應的查詢.這樣的界面設計,使得“開采現狀圖”成為用戶選擇相關問題井的核心界面,減少了用戶的輸入量、極大地方便了用戶的操作.




以油田應用為背景,建立了注水井分散數據統一管理平臺,對分散的數據起到了管理作用.并對采油二廠注水井方案調整實際生產工作做以輔助,取得了良好的成果.
[1]蔡安寧.基于SVG的旅游電子地圖設計與發布[J].測繪與空間地理信息,2009,32(5):74-75.
[2]張 妍,奚 玲.實現大地圖快速縮放和實時顯示的一種有效方法[J].圖像微處理,2006,22(1):193-195.
[3]文必龍,劉學爽,張頌早.基于XML油田井場數據加載軟件的設計與實現[J].哈爾濱商業大學學報:自然科學版,2009,25(2):174-177,186.