張黎娜
(安徽廣播電視大學(xué),合肥 230000)
?
三維地理空間中數(shù)據(jù)庫(kù)性能優(yōu)化技術(shù)研究
張黎娜
(安徽廣播電視大學(xué),合肥 230000)
在三維建模與動(dòng)態(tài)仿真項(xiàng)目的開(kāi)發(fā)過(guò)程中,隨著項(xiàng)目的不斷推進(jìn),地理空間數(shù)據(jù)量不斷增長(zhǎng),數(shù)據(jù)的存取日益頻繁,三維地理空間數(shù)據(jù)庫(kù)凸顯出數(shù)據(jù)存儲(chǔ)響應(yīng)速度過(guò)慢、地圖瀏覽等待時(shí)間過(guò)長(zhǎng)的問(wèn)題。通過(guò)對(duì)關(guān)系數(shù)據(jù)庫(kù)性能優(yōu)化技術(shù)、空間數(shù)據(jù)引擎性能優(yōu)化技術(shù)、ArcGIS服務(wù)器性能優(yōu)化技術(shù)實(shí)現(xiàn)了三維地理空間數(shù)據(jù)庫(kù)性能優(yōu)化,有效地解決了數(shù)據(jù)庫(kù)的性能問(wèn)題。
三維地理空間;Oracle數(shù)據(jù)庫(kù);空間數(shù)據(jù)引擎;ArcGIS服務(wù)器
在三維建模與動(dòng)態(tài)仿真項(xiàng)目的開(kāi)發(fā)過(guò)程中,隨著項(xiàng)目研究的不斷深入,三維地理空間數(shù)據(jù)量不斷增長(zhǎng),對(duì)空間數(shù)據(jù)的存取操作日益頻繁,與數(shù)據(jù)庫(kù)進(jìn)行空間數(shù)據(jù)交換時(shí),數(shù)據(jù)存儲(chǔ)響應(yīng)速度越來(lái)越慢,地圖瀏覽等待時(shí)間越來(lái)越長(zhǎng)。為了保障三維地理空間數(shù)據(jù)庫(kù)能夠迅速、安全、有效地提供服務(wù),對(duì)空間數(shù)據(jù)庫(kù)的性能優(yōu)化技術(shù)進(jìn)行研究刻不容緩[1]。事實(shí)上,數(shù)據(jù)庫(kù)性能優(yōu)化技術(shù)的研究已成空間數(shù)據(jù)庫(kù)應(yīng)用技術(shù)研究的核心[2]。
1.1 設(shè)計(jì)思想
三維地理空間數(shù)據(jù)庫(kù)是通過(guò)Oracle關(guān)系數(shù)據(jù)庫(kù)和ArcSDE空間數(shù)據(jù)引擎實(shí)現(xiàn)的。在本研究中主要通過(guò)Oracle,ArcSDE及ArcGIS服務(wù)器[3]的性能優(yōu)化技術(shù)來(lái)實(shí)現(xiàn)空間數(shù)據(jù)庫(kù)的性能優(yōu)化,以確保三維地理空間數(shù)據(jù)庫(kù)為項(xiàng)目提供迅速、安全、有效的服務(wù)。
1.2 研究?jī)?nèi)容
本文的主要研究?jī)?nèi)容如圖1所示。
圖1 主要研究?jī)?nèi)容
1.2.1 Oracle關(guān)系數(shù)據(jù)庫(kù)性能優(yōu)化技術(shù)研究
Oracle關(guān)系數(shù)據(jù)庫(kù)是三維地理空間數(shù)據(jù)庫(kù)的重要組成部分,可以通過(guò)對(duì)關(guān)系數(shù)據(jù)庫(kù)內(nèi)存中的部分參數(shù)進(jìn)行調(diào)整與優(yōu)化來(lái)達(dá)到優(yōu)化其性能的目的。關(guān)系數(shù)據(jù)庫(kù)內(nèi)存中參數(shù)調(diào)整的具體方法:通過(guò)內(nèi)存中數(shù)據(jù)的命中率來(lái)調(diào)整相關(guān)參數(shù)的大小。
(1)數(shù)據(jù)緩沖區(qū)(db_cache_size)參數(shù)的調(diào)整。數(shù)據(jù)緩沖區(qū)命中率的計(jì)算如下:
因命中率低于90%,說(shuō)明在數(shù)據(jù)緩沖區(qū)的數(shù)據(jù)命中率是比較低的,這會(huì)導(dǎo)致數(shù)據(jù)在內(nèi)存中頻繁地?fù)Q入與換出,影響系統(tǒng)的性能,所以必須結(jié)合命中率的值調(diào)整db_cache_size參數(shù)的大小。
(2)日志緩沖區(qū)參數(shù)的調(diào)整。日志緩沖區(qū)失敗率如下:
若redo buffers allocation retry/redo entry的比值高于1%,說(shuō)明數(shù)據(jù)操作的失敗率比較大,這樣會(huì)導(dǎo)致寫(xiě)盤的頻率增大,加重系統(tǒng)的負(fù)擔(dān),所以要調(diào)整log_buffe參數(shù)的值,使比值低于1%。
(3)共享池(shared_pool_size)參數(shù)的調(diào)整。共享池參數(shù)的值過(guò)大或過(guò)小,都會(huì)造成系統(tǒng)在內(nèi)存中頻繁地?fù)Q頁(yè),導(dǎo)致內(nèi)存的抖動(dòng),影響整個(gè)系統(tǒng)的性能,增加系統(tǒng)負(fù)擔(dān)。庫(kù)緩沖區(qū)與數(shù)據(jù)字典緩沖區(qū)成功率如下:
若緩沖區(qū)的成功率小于99%或是數(shù)據(jù)字典緩沖區(qū)的成功率小于90%,就說(shuō)明共享池參數(shù)的大小設(shè)置不合理,需要調(diào)整。庫(kù)緩沖區(qū)成功率和數(shù)據(jù)字典緩沖區(qū)的成功率接近于臨界值,可以暫不調(diào)整shared_pool_size參數(shù)的值,根據(jù)項(xiàng)目的實(shí)際需求再動(dòng)態(tài)進(jìn)行調(diào)整。
1.2.2 空間數(shù)據(jù)引擎性能優(yōu)化技術(shù)研究
空間數(shù)據(jù)引擎是三維地理空間數(shù)據(jù)庫(kù)的另一重要組成部分,通過(guò)對(duì)空間數(shù)據(jù)引擎中表和索引設(shè)置、塊參數(shù)設(shè)置的調(diào)整,實(shí)現(xiàn)ArcSDE性能優(yōu)化,進(jìn)而達(dá)到優(yōu)化三維地理空間數(shù)據(jù)庫(kù)的性能的目的。
(1)表和索引分開(kāi)存儲(chǔ)。一般情況下,用戶訪問(wèn)表時(shí),首先是先訪問(wèn)表的索引,然后再根據(jù)表索引內(nèi)容定位到表的內(nèi)容。所以進(jìn)行海量空間數(shù)據(jù)存儲(chǔ)時(shí),如果把表和表的索引一起存儲(chǔ),會(huì)占用大量的存儲(chǔ)空間和I/O資源,導(dǎo)致訪問(wèn)速度下降。將ArcSDE中表和索引分開(kāi)存儲(chǔ)到不同空間,可以提升對(duì)數(shù)據(jù)的訪問(wèn)效率。
(2)塊參數(shù)的調(diào)整。在實(shí)際項(xiàng)目進(jìn)展過(guò)程中,涉及較多的數(shù)據(jù)操作是數(shù)據(jù)更新,而數(shù)據(jù)的插入與刪除操作相對(duì)較少。為避免過(guò)多的數(shù)據(jù)遷移,可以對(duì)ArcSDE中pctfree值和pctused值進(jìn)行設(shè)置:前者的值設(shè)置高點(diǎn),后者的值設(shè)置低點(diǎn)。即使空間數(shù)據(jù)更新操作比較頻繁,但由于pctfree值比較高空閑空間較多,數(shù)據(jù)插入刪除操作減少,也不易造成數(shù)據(jù)遷移,影響空間數(shù)據(jù)庫(kù)性能。參數(shù)值設(shè)置如下:
1.2.3 ArcGIS服務(wù)器性能優(yōu)化技術(shù)研究[4-5]
雖然ArcGIS服務(wù)器不是空間數(shù)據(jù)庫(kù)的組成部分,空間數(shù)據(jù)庫(kù)的性能優(yōu)化看似和ArcGIS服務(wù)器沒(méi)什么關(guān)系,但通過(guò)對(duì)ArcGIS服務(wù)器內(nèi)存參數(shù)的調(diào)整可以避免訪問(wèn)后臺(tái)數(shù)據(jù)庫(kù);通過(guò)對(duì)網(wǎng)絡(luò)參數(shù)的調(diào)整可以提高用戶通過(guò)網(wǎng)絡(luò)瀏覽數(shù)據(jù)的速度;通過(guò)設(shè)置不同比例尺地圖文檔的顯示可以提高用戶瀏覽空間數(shù)據(jù)的速度。這些操作可以有效地調(diào)整三維地理空間中數(shù)據(jù)庫(kù)的性能。
(1)內(nèi)存參數(shù)調(diào)整。一般情況下,操作系統(tǒng)會(huì)把內(nèi)存中的部分?jǐn)?shù)據(jù)寫(xiě)入外存。我們可以通過(guò)對(duì)內(nèi)存參數(shù)進(jìn)行一些調(diào)整,禁止系統(tǒng)的這種操作,讓數(shù)據(jù)存儲(chǔ)在內(nèi)存中,避免使用虛擬內(nèi)存,以提升系統(tǒng)性能[6]。具體操作如圖2所示。
圖2 內(nèi)存參數(shù)設(shè)置
(2)網(wǎng)絡(luò)參數(shù)調(diào)整。一般情況下,系統(tǒng)中的限制可保留帶寬的默認(rèn)值為20%,系統(tǒng)幾乎很少用到這部分帶寬,使用率往往不足1%。應(yīng)該禁止限制可保留帶寬的使用,以有效地提高用戶通過(guò)網(wǎng)絡(luò)瀏覽數(shù)據(jù)的速度[7]。具體的操作界面如圖3所示。
圖3 網(wǎng)絡(luò)參數(shù)設(shè)置的操作界面
(3)不同比例尺地圖文檔顯示的設(shè)置。地圖文檔根據(jù)比例尺的不同包含的數(shù)據(jù)量也不同[8]。比例尺高的地圖文檔包含的數(shù)據(jù)量大,呈現(xiàn)的數(shù)據(jù)信息比較豐富。因此設(shè)置合理的比例尺顯示地圖文檔,有利于數(shù)據(jù)的提取,可以提升用戶瀏覽地圖文檔的速度。具體的操作界面如圖4所示。
圖4 不同比例尺地圖文檔顯示的設(shè)置
通過(guò)對(duì)三維地理空間數(shù)據(jù)庫(kù)性能優(yōu)化技術(shù)的研究,有效地解決了數(shù)據(jù)庫(kù)的性能問(wèn)題,數(shù)據(jù)存儲(chǔ)響應(yīng)速度提升了三分之一,地圖瀏覽等待時(shí)間縮短近一半,達(dá)到了優(yōu)化空間數(shù)據(jù)庫(kù)的目的。數(shù)據(jù)瀏覽界面如圖5,數(shù)據(jù)查詢界面如圖6。
圖5 數(shù)據(jù)瀏覽界面
圖6 數(shù)據(jù)查詢界面
但是,項(xiàng)目數(shù)據(jù)庫(kù)是裝在一個(gè)磁盤上的,雖然滿足了目前項(xiàng)目的開(kāi)發(fā)和研究需求,卻增加了I/O的操作。因此,在以后的研究中可以考慮空間數(shù)據(jù)多磁盤存儲(chǔ),以平衡I/O操作。
[1] 康莊,王永力,毛朝霞.數(shù)字填圖系統(tǒng)成果地質(zhì)圖空間數(shù)據(jù)庫(kù)的特點(diǎn)與質(zhì)量檢查方法[J].地質(zhì)與資源,2012(2):256-260.
[2] 向紅梅,譚立力,曾光清.基礎(chǔ)地理空間數(shù)據(jù)庫(kù)更新與動(dòng)態(tài)管理方法[J].測(cè)繪科學(xué),2016(11):1-6.[3] 黨安榮,賈海峰,易善禎,等.ArcGIS&Desktop.地理信息系統(tǒng)應(yīng)用指南[M].北京:清華大學(xué)出版社,2002.
[4] 張燕,張紹良,張懂慶.CO2-ECBM地質(zhì)空間數(shù)據(jù)庫(kù)建設(shè)方法研究[J].工礦自動(dòng)化,2014(10):90-93.
[5] 邱洪鋼,張青蓮,陸邵強(qiáng).ArcGIS Engine開(kāi)發(fā)從入門到精通[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] 王家耀.測(cè)繪導(dǎo)航與地理信息科學(xué)技術(shù)的進(jìn)展—慶祝測(cè)繪科學(xué)技術(shù)學(xué)報(bào)創(chuàng)刊30周年[J].測(cè)繪科學(xué)技術(shù)學(xué)報(bào),2014(5):441-447.
(責(zé)任編校:夏玉玲)
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-),女,安徽阜陽(yáng)人,助理工程師,碩士,主要從事中間件技術(shù)研究。
TP311.132.4
A
1672-349X(2016)06-0051-03
10.16160/j.cnki.tsxyxb.2016.06.014