資源描述:
《基于oracle spatial 10g的gis數(shù)據(jù)存儲(chǔ)研究》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、2010年3月陜西理工學(xué)院學(xué)報(bào)(自然科學(xué)版)Mar.201O第26卷第1期JournalofShaan~UniversityofTechnology(NaturalScienceEdition)Vo1.26No.1【文章編號(hào)]1673—2944(2010)01—0048—06基于OracleSpatiallOg的GIS數(shù)據(jù)存儲(chǔ)研究王亞文,容曉峰,李建元2(1.西安工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,陜西西安710032;2.山西師范大學(xué)7-"程學(xué)院,山西臨汾041004)[摘要】分析了現(xiàn)有GIS數(shù)據(jù)存儲(chǔ)方案存在的問(wèn)
2、題,提出了OracleSpafiM在GIS數(shù)據(jù)存儲(chǔ)方面的優(yōu)勢(shì),介紹了OracleSpatiM以及OracleSpatial10g的新功能,以代碼形式給出了OracleSpatiallOg中GIS數(shù)據(jù)的關(guān)鍵操作,以西安市道路GIs數(shù)據(jù)為例說(shuō)明了GIS數(shù)據(jù)是如何在Ora-clelOg中存儲(chǔ)的。[關(guān)鍵詞】GIs數(shù)據(jù);OracleSpatial;圖層;控制文件[中圖分類號(hào)】TP311.132.4【文獻(xiàn)標(biāo)識(shí)碼]A目前大多數(shù)GIS軟件采用關(guān)系數(shù)據(jù)庫(kù)結(jié)合文件的數(shù)據(jù)管理方案存儲(chǔ)GIS數(shù)據(jù),屬性數(shù)據(jù)利用關(guān)系型數(shù)據(jù)庫(kù)存儲(chǔ),對(duì)于空
3、間數(shù)據(jù),由于其特殊性,則保持原有文件結(jié)構(gòu)不變,以文件形式存儲(chǔ)。該方案由于在關(guān)系數(shù)據(jù)庫(kù)和文本之問(wèn)要建立關(guān)聯(lián)機(jī)制,所以在進(jìn)行GIS數(shù)據(jù)的查詢、更新等操作時(shí)速度較慢,而且在存儲(chǔ)較復(fù)雜的GIS數(shù)據(jù)時(shí)效果不好,有時(shí)甚至導(dǎo)致GIS數(shù)據(jù)失真的現(xiàn)象。因此GIS數(shù)據(jù)的存儲(chǔ)歷來(lái)是個(gè)研究的熱點(diǎn)。Oracle公司在其數(shù)據(jù)庫(kù)軟件中增加了OracleSpatial組件,很好地解決了GIS數(shù)據(jù)存儲(chǔ)的難題。OracleSpatial發(fā)展了最新的空間數(shù)據(jù)和屬性數(shù)據(jù)的全關(guān)系型數(shù)據(jù)庫(kù)管理方式,利用關(guān)系型數(shù)據(jù)庫(kù)來(lái)存儲(chǔ)和處理空間數(shù)據(jù),實(shí)現(xiàn)了空間數(shù)據(jù)和
4、屬性數(shù)據(jù)的無(wú)縫集成和一體化存儲(chǔ)管理,對(duì)索引機(jī)制進(jìn)行了優(yōu)化,增加了二級(jí)過(guò)濾、緩沖區(qū)生成和疊加分析等過(guò)程。1OracleSpatialOracle是關(guān)系數(shù)據(jù)庫(kù)的創(chuàng)導(dǎo)者和先驅(qū),是標(biāo)準(zhǔn)SQL數(shù)據(jù)庫(kù)語(yǔ)言的產(chǎn)品-lI2】。Oracle在8.o4版本中推出了空間數(shù)據(jù)管理工具——SpatialCartridge(SC),sC采用多記錄多字段存儲(chǔ)空間數(shù)據(jù)。隨著Oracle8i的推出,SC升級(jí)為OracleSpatial。1.1OracleSpatia1支持的空間數(shù)據(jù)類型OracleSpatia1支持的空間數(shù)據(jù)類型如圖l所示。1
5、.2SDO_GEOMETRY對(duì)象類型在OracleSpatial中,引入了抽象數(shù)據(jù)類型(ADT).SDO—GEOMETRY來(lái)表示空間數(shù)據(jù)類型。空間數(shù)據(jù)都存儲(chǔ)在空間字段SDO—GEOMETRY中,理解SDO—GEOMETRY是編寫(xiě)OracleSpatial接口程序的關(guān)鍵。SDO_GEOMETRY是按照OpenGIS規(guī)范定義的一個(gè)對(duì)象,其原始的創(chuàng)建方式如下所示【3】:CREATEnEsdo_geomctryASOBJECT(SDO_GTYPENUMBER,SDO_SRIDNUMBER,SDOPOINTSDO_PO
6、INTIⅦE,_SDOELEM_INFOMDSYS.SDO_ELEMINFOARRAY,__收稿日期:20o9—10-29基金項(xiàng)目:陜西省教育廳專項(xiàng)科研計(jì)劃項(xiàng)目(08JK3~0);酉安工業(yè)大學(xué)校長(zhǎng)科研基金資助項(xiàng)目(XAGDXJJ0819)。作者簡(jiǎn)介:王亞文(1981一)男,陜西省扶風(fēng)縣人,西安工業(yè)大學(xué)助教,碩士,主要研究方向?yàn)榭臻g推理、計(jì)算機(jī)網(wǎng)絡(luò);容曉峰(1969一),男,陜西省寶雞市人,西安工業(yè)大學(xué)副教授,博士,碩導(dǎo),主要研究方向?yàn)樾畔踩?、分布式?shí)時(shí)系統(tǒng)。第1期王亞文,容曉峰,李建元基于OracleSpa
7、tiallOg的GIS數(shù)據(jù)存儲(chǔ)研究口O點(diǎn)直線串直線多邊形弧線串弧線多邊形o混合多邊形.混合線串圓矩形圖1OracleSpatia1支持的空間數(shù)據(jù)類型SDOORDINATES_MDSYS.SDO—ORDINATE—ARRAY);該對(duì)象由5個(gè)部分組成,下面分別介紹這5個(gè)部分的定義方法:(1)SDO—GTYPE是一個(gè)NUMBER型的數(shù)值,用來(lái)定義存儲(chǔ)對(duì)象的類型;(2)SDO—SRID也是一個(gè)NUMBER型的數(shù)值,它用于標(biāo)識(shí)與幾何對(duì)象相關(guān)的空間坐標(biāo)參考系;(3)SDO—POINT是一個(gè)包含x,Y,z數(shù)值信息的對(duì)象,用
8、于表示幾何類型為點(diǎn)的幾何對(duì)象;(4)SDO_ELEMANFO是一個(gè)可變長(zhǎng)度的數(shù)組,每3個(gè)數(shù)作為一個(gè)元素單位,用于解釋坐標(biāo)是如何存儲(chǔ)在SDO—ORDINATES數(shù)組中的;(5)SDO—ORDINATES是一個(gè)可變長(zhǎng)度的數(shù)組,用于存儲(chǔ)幾何對(duì)象的真實(shí)坐標(biāo),該數(shù)組的類型為NUMBER型。I.3oracle中GIS數(shù)據(jù)的組織教育機(jī)構(gòu)層Oracle中GIS數(shù)據(jù)被組織成一系列的專題圖層,每個(gè)圖層在Oracle中對(duì)