張黎娜
(安徽廣播電視大學,合肥 230000)
?
三維地理空間中數據庫性能優化技術研究
張黎娜
(安徽廣播電視大學,合肥 230000)
在三維建模與動態仿真項目的開發過程中,隨著項目的不斷推進,地理空間數據量不斷增長,數據的存取日益頻繁,三維地理空間數據庫凸顯出數據存儲響應速度過慢、地圖瀏覽等待時間過長的問題。通過對關系數據庫性能優化技術、空間數據引擎性能優化技術、ArcGIS服務器性能優化技術實現了三維地理空間數據庫性能優化,有效地解決了數據庫的性能問題。
三維地理空間;Oracle數據庫;空間數據引擎;ArcGIS服務器
在三維建模與動態仿真項目的開發過程中,隨著項目研究的不斷深入,三維地理空間數據量不斷增長,對空間數據的存取操作日益頻繁,與數據庫進行空間數據交換時,數據存儲響應速度越來越慢,地圖瀏覽等待時間越來越長。為了保障三維地理空間數據庫能夠迅速、安全、有效地提供服務,對空間數據庫的性能優化技術進行研究刻不容緩[1]。事實上,數據庫性能優化技術的研究已成空間數據庫應用技術研究的核心[2]。
1.1 設計思想
三維地理空間數據庫是通過Oracle關系數據庫和ArcSDE空間數據引擎實現的。在本研究中主要通過Oracle,ArcSDE及ArcGIS服務器[3]的性能優化技術來實現空間數據庫的性能優化,以確保三維地理空間數據庫為項目提供迅速、安全、有效的服務。
1.2 研究內容
本文的主要研究內容如圖1所示。

圖1 主要研究內容
1.2.1 Oracle關系數據庫性能優化技術研究
Oracle關系數據庫是三維地理空間數據庫的重要組成部分,可以通過對關系數據庫內存中的部分參數進行調整與優化來達到優化其性能的目的。關系數據庫內存中參數調整的具體方法:通過內存中數據的命中率來調整相關參數的大小。
(1)數據緩沖區(db_cache_size)參數的調整。數據緩沖區命中率的計算如下:

因命中率低于90%,說明在數據緩沖區的數據命中率是比較低的,這會導致數據在內存中頻繁地換入與換出,影響系統的性能,所以必須結合命中率的值調整db_cache_size參數的大小。
(2)日志緩沖區參數的調整。日志緩沖區失敗率如下:

若redo buffers allocation retry/redo entry的比值高于1%,說明數據操作的失敗率比較大,這樣會導致寫盤的頻率增大,加重系統的負擔,所以要調整log_buffe參數的值,使比值低于1%。
(3)共享池(shared_pool_size)參數的調整。共享池參數的值過大或過小,都會造成系統在內存中頻繁地換頁,導致內存的抖動,影響整個系統的性能,增加系統負擔。庫緩沖區與數據字典緩沖區成功率如下:

若緩沖區的成功率小于99%或是數據字典緩沖區的成功率小于90%,就說明共享池參數的大小設置不合理,需要調整。庫緩沖區成功率和數據字典緩沖區的成功率接近于臨界值,可以暫不調整shared_pool_size參數的值,根據項目的實際需求再動態進行調整。
1.2.2 空間數據引擎性能優化技術研究
空間數據引擎是三維地理空間數據庫的另一重要組成部分,通過對空間數據引擎中表和索引設置、塊參數設置的調整,實現ArcSDE性能優化,進而達到優化三維地理空間數據庫的性能的目的。
(1)表和索引分開存儲。一般情況下,用戶訪問表時,首先是先訪問表的索引,然后再根據表索引內容定位到表的內容。所以進行海量空間數據存儲時,如果把表和表的索引一起存儲,會占用大量的存儲空間和I/O資源,導致訪問速度下降。將ArcSDE中表和索引分開存儲到不同空間,可以提升對數據的訪問效率。
(2)塊參數的調整。在實際項目進展過程中,涉及較多的數據操作是數據更新,而數據的插入與刪除操作相對較少。為避免過多的數據遷移,可以對ArcSDE中pctfree值和pctused值進行設置:前者的值設置高點,后者的值設置低點。即使空間數據更新操作比較頻繁,但由于pctfree值比較高空閑空間較多,數據插入刪除操作減少,也不易造成數據遷移,影響空間數據庫性能。參數值設置如下:
1.2.3 ArcGIS服務器性能優化技術研究[4-5]
雖然ArcGIS服務器不是空間數據庫的組成部分,空間數據庫的性能優化看似和ArcGIS服務器沒什么關系,但通過對ArcGIS服務器內存參數的調整可以避免訪問后臺數據庫;通過對網絡參數的調整可以提高用戶通過網絡瀏覽數據的速度;通過設置不同比例尺地圖文檔的顯示可以提高用戶瀏覽空間數據的速度。這些操作可以有效地調整三維地理空間中數據庫的性能。
(1)內存參數調整。一般情況下,操作系統會把內存中的部分數據寫入外存。我們可以通過對內存參數進行一些調整,禁止系統的這種操作,讓數據存儲在內存中,避免使用虛擬內存,以提升系統性能[6]。具體操作如圖2所示。

圖2 內存參數設置
(2)網絡參數調整。一般情況下,系統中的限制可保留帶寬的默認值為20%,系統幾乎很少用到這部分帶寬,使用率往往不足1%。應該禁止限制可保留帶寬的使用,以有效地提高用戶通過網絡瀏覽數據的速度[7]。具體的操作界面如圖3所示。

圖3 網絡參數設置的操作界面
(3)不同比例尺地圖文檔顯示的設置。地圖文檔根據比例尺的不同包含的數據量也不同[8]。比例尺高的地圖文檔包含的數據量大,呈現的數據信息比較豐富。因此設置合理的比例尺顯示地圖文檔,有利于數據的提取,可以提升用戶瀏覽地圖文檔的速度。具體的操作界面如圖4所示。

圖4 不同比例尺地圖文檔顯示的設置
通過對三維地理空間數據庫性能優化技術的研究,有效地解決了數據庫的性能問題,數據存儲響應速度提升了三分之一,地圖瀏覽等待時間縮短近一半,達到了優化空間數據庫的目的。數據瀏覽界面如圖5,數據查詢界面如圖6。

圖5 數據瀏覽界面

圖6 數據查詢界面
但是,項目數據庫是裝在一個磁盤上的,雖然滿足了目前項目的開發和研究需求,卻增加了I/O的操作。因此,在以后的研究中可以考慮空間數據多磁盤存儲,以平衡I/O操作。
[1] 康莊,王永力,毛朝霞.數字填圖系統成果地質圖空間數據庫的特點與質量檢查方法[J].地質與資源,2012(2):256-260.
[2] 向紅梅,譚立力,曾光清.基礎地理空間數據庫更新與動態管理方法[J].測繪科學,2016(11):1-6.[3] 黨安榮,賈海峰,易善禎,等.ArcGIS&Desktop.地理信息系統應用指南[M].北京:清華大學出版社,2002.
[4] 張燕,張紹良,張懂慶.CO2-ECBM地質空間數據庫建設方法研究[J].工礦自動化,2014(10):90-93.
[5] 邱洪鋼,張青蓮,陸邵強.ArcGIS Engine開發從入門到精通[M].北京:人民郵電出版社,2010.
[6] Zhang Degan, Zhu Yannan. A new constructing approach for a weighted topology of wireless sensornetworks based on local-world theory for the Internet of Things(IOT)[J].Computers & Mathematicswith Applications,2012,64(5):1044-1055.
[7] Zhang Degan, Liang Yanping. A kind of novel method of service-aware computing for uncertainmobile applications[J]. Mathematical and Computer Modelling,2013,57(3-4):344-356.
[8] 王家耀.測繪導航與地理信息科學技術的進展—慶祝測繪科學技術學報創刊30周年[J].測繪科學技術學報,2014(5):441-447.
(責任編校:夏玉玲)
A Research on Technological Optimization of Database Performance in Three Dimensional Geographic Space
ZHANG Li-na
(Anhui Radio and TV University, Hefei 230000, China)
With the advancement of 3D modeling development and dynamic simulation, the increase in the amount of data on geographical space, the more and more frequent data access, problems arise in the 3D geographic database: the slow response speed of data access, and long waiting time for map browsing. Based on the technological optimization of relational database performance, spatial data engine performance, and ArcGIS server performance, the author of this paper has optimized the database performance in three dimensional geographic space.
three dimensional geographic space; Oracle database; spatial data engine; ArcGIS server
張黎娜(1987-),女,安徽阜陽人,助理工程師,碩士,主要從事中間件技術研究。
TP311.132.4
A
1672-349X(2016)06-0051-03
10.16160/j.cnki.tsxyxb.2016.06.014