Oracle Spatial空間數(shù)據(jù)庫簡介_第1頁
Oracle Spatial空間數(shù)據(jù)庫簡介_第2頁
Oracle Spatial空間數(shù)據(jù)庫簡介_第3頁
Oracle Spatial空間數(shù)據(jù)庫簡介_第4頁
Oracle Spatial空間數(shù)據(jù)庫簡介_第5頁
已閱讀5頁,還剩79頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、空間數(shù)據(jù)庫Spatial Database Oracle Spatial概述本章內(nèi)容1 Oracle Spatial簡介2 數(shù)據(jù)類型和元數(shù)據(jù)3 索引和查詢空間數(shù)據(jù)4 坐標系統(tǒng)教學目標掌握以下內(nèi)容:了解ORACLE Spatial的功能ORACLE Spatial存儲空間數(shù)據(jù)的特點緒論空間數(shù)據(jù)庫是某一區(qū)域內(nèi)關于一定地理要素特征的數(shù)據(jù)集合地理數(shù)據(jù):描述地理要素特征(空間實體)的數(shù)據(jù)地理信息系統(tǒng)如何處理數(shù)據(jù)的?空間數(shù)據(jù)模型點:位置:(x,y) 屬性:符號線:位置: (x1,y1),(x2,y2),(xn,yn) 屬性:符號形狀、顏色、尺寸面:位置:(x1,y1),(x2,y2),(xi,yi),(x

2、n,yn) 屬性:符號變化 等值線 (1).矢量結構模型空間數(shù)據(jù)模型遙感傳感器平臺傳感器(2).柵格結構模型空間數(shù)據(jù)模型 2.幾何對象點:空間的一個坐標點;線:多個點組成的弧段;面:多個弧段組成的封閉多邊形;圖層按 “主題,” 分層真實世界空間數(shù)據(jù)模型按 數(shù)據(jù)類型分層G空間數(shù)據(jù)屬性數(shù)據(jù)空間數(shù)據(jù)和屬性數(shù)據(jù)的綜合體Name Address Town St. Zip GIS是IS空間數(shù)據(jù)模型分類:每層地理數(shù)據(jù)空間數(shù)據(jù)屬性數(shù)據(jù);全部地理數(shù)據(jù)全部圖層空間數(shù)據(jù)全部圖層屬性數(shù)據(jù);空間數(shù)據(jù)庫管理方案基于文件與關系式數(shù)據(jù)庫的空間數(shù)據(jù)混合管理方案基于關系式數(shù)據(jù)庫的空間數(shù)據(jù)管理方案基于對象關系式數(shù)據(jù)庫的空間數(shù)據(jù)管理

3、方案。文件關系數(shù)據(jù)庫混合管理方案屬性數(shù)據(jù)建立在RDBMS上,數(shù)據(jù)存儲和檢索比較可靠、有效;幾何數(shù)據(jù)采用圖形文件管理,功能較弱,特別是在數(shù)據(jù)的安全性、一致性、完整性、并發(fā)控制方面,比商用數(shù)據(jù)庫要遜色得多??臻g數(shù)據(jù)分開存儲,數(shù)據(jù)的完整性有可能遭到破壞。GIS軟件:Supermap,Arc/Info,MGE,GenMap等幾何數(shù)據(jù)屬性數(shù)據(jù)ID數(shù)據(jù)文件數(shù)據(jù)庫早期圖形用戶界面圖形處理DBMS屬性用戶界面圖形文件庫屬性數(shù)據(jù)庫GIS用戶界面圖形處理DBMS圖形文件庫屬性數(shù)據(jù)庫高級語言ODBC協(xié)議GIS用戶界面圖形處理DBMS圖形文件庫屬性數(shù)據(jù)庫高級語言數(shù)據(jù)庫開發(fā)語言數(shù)據(jù)庫開發(fā)數(shù)據(jù)庫開發(fā)全關系式數(shù)據(jù)庫管理方案

4、屬性數(shù)據(jù)、幾何數(shù)據(jù)同時采用關系式數(shù)據(jù)庫進行管理空間數(shù)據(jù)和屬性數(shù)據(jù)不必進行煩瑣的連接,數(shù)據(jù)存取較快屬于間接存取方式,效率比DBMS的直接存取慢,特別是涉及空間查詢、對象嵌套等復雜的空間操作GIS軟件:supermap ,System9,Small World、Geovision等GIS界面屬性數(shù)據(jù)(定長記錄)空間數(shù)據(jù)(變長記錄)DBMS空間數(shù)據(jù)庫關系表二進制塊對象關系數(shù)據(jù)庫管理方案對現(xiàn)有的關系數(shù)據(jù)庫進行擴展,增加空間數(shù)據(jù)類型解決了空間數(shù)據(jù)變長記錄的存儲問題,由數(shù)據(jù)庫軟件商開發(fā),效率較高用戶不能根據(jù)GIS要求進行空間對象的再定義,因而不能將設計的拓撲結構進行存儲,沒有解決數(shù)據(jù)的嵌套紀錄問題 GIS

5、軟件:supermap,TIGER,Geo+、Geo Tropics等GIS界面空間數(shù)據(jù)處理DBMS空間數(shù)據(jù)庫擴充實體類型(點、線、面、圓等)1 Oracle Spatial概念Oracle Spatial是什么Oracle Spatial功能 數(shù)據(jù)模型查詢模型空間數(shù)據(jù)索引空間關系和條件空間聚集函數(shù)地理編碼Geocoding1.1 Oracle SpatialOracle Spatial是什么?Oracle Spatial 是 Oracle 數(shù)據(jù)庫企業(yè)版的空間數(shù)據(jù)處理一個選件。Oracle Spatial能夠在一個多用戶環(huán)境中部署地理信息系統(tǒng)(GIS),并且與其它企業(yè)數(shù)據(jù)有機結合起來,統(tǒng)一部署

6、電子商務、政務。1.1 Oracle SpatialOracle Spatial功能Oracle Spatial 實現(xiàn)了對空間信息的存儲、訪問和分析。傳統(tǒng)的 GIS 技術已達到其本身的極限,用戶越來越多地轉向以數(shù)據(jù)庫為中心的空間計算。 Oracle Spatial將空間過程和操作直接轉移到數(shù)據(jù)庫內(nèi)核中,從而提高了性能和安全性。Oracle Spatial將所有的地理空間數(shù)據(jù)類型(矢量、柵格、網(wǎng)格、影像、網(wǎng)絡、拓撲)統(tǒng)一在單一、開放的、基于標準的數(shù)據(jù)管理環(huán)境中, 減少了管理單獨、分離的專用系統(tǒng)的成本、復雜性和開銷。1.1 Oracle SpatialOracle Spatial功能Oracle

7、Spatial可用標準的 SQL 查詢管理空間數(shù)據(jù)。提供了SQL模式和函數(shù)來實現(xiàn)Feature Collection的存儲、檢索、更新和查詢。 Oracle Spatial不但具有傳統(tǒng)GIS的所有特性,而且還具有關系數(shù)據(jù)庫的特性,這些特性擴展了應用程序開發(fā)人員的工作范圍并提供了生產(chǎn)率,因而能支持更廣泛的應用程序并提高性能。 1.1 Oracle SpatialOracle Spatial的組成實現(xiàn)模式(MDSYS)規(guī)定了支持的幾何數(shù)據(jù)類型的存儲、語法和語義空間索引機制一套運算符和函數(shù)進行感興趣區(qū)域查詢,空間連接查詢和其它空間分析操作管理工具1.1 Oracle Spatial對象關系模型Obj

8、ect Relational ModelSpatial采用對象關系模型表示幾何對象定義類型為MDSYS.SDO_GEOMETRY的字段每個幾何對象無需占用多行存儲對應OpenGIS Feature實現(xiàn)規(guī)范中的“SQL92+Geometry”Feature實現(xiàn)方案1.1 Oracle Spatial對象關系模型的優(yōu)勢支持豐富的幾何對象類型包括圓弧arc ,圓circle, 混合多邊形compound polygon, 混合折線段compound line string, 以及優(yōu)化的矩形易于創(chuàng)建和維護空間索引以及構造空間查詢空間索引由Oracle9i數(shù)據(jù)庫服務器自動維護幾何對象可以保存在單條記錄的

9、單個字段優(yōu)化的性能1.1 Oracle SpatialSpatial支持的幾何對象類型Point, point clusterLine stringPolygonArc line stringArc polygonCompound polygonCompound line stringCircleRectangle1.1 Oracle SpatialSpatial支持3維和4維幾何對象類型僅實現(xiàn)存儲和索引空間函數(shù)僅對前兩維坐標操作空間運算符對多于兩維的對象無效Spatial的層次結構數(shù)據(jù)模型高層次的對象由低一層次的對象構成包括元素element,幾何形geometry和圖層layer三個層次1

10、.2 數(shù)據(jù)模型元素Element構成幾何形對象的零件,包括點、折線段和多邊形多邊形按照頂點排列順序分為外部多邊形和內(nèi)部多邊形,順時針為內(nèi),逆時針為外一個內(nèi)多邊形和若干外多邊形組成帶洞的多邊形幾何形GeometryGeometry代表一個地物,由若干順序排列的元素構成構成元素可以是單個、多個同類型或者多個不同類型1.2 數(shù)據(jù)模型圖層Layer圖層是若干具有相同屬性的幾何形的集合人口密度、道路橋梁網(wǎng)絡等圖層的幾何形和相關的空間索引都保存在標準的數(shù)據(jù)庫表中坐標系Coordinate System(空間參照系)空間數(shù)據(jù)都具有坐標系屬性,坐標系可以是地理相關的,也可以和地理無關地理相關的坐標數(shù)據(jù)有長度單

11、位地理無關即平面直角坐標(笛卡爾坐標)1.2 數(shù)據(jù)模型坐標系Coordinate System(空間參照系)Spatial支持四種坐標笛卡爾坐標Cartesian coordinate平面直角坐標,是幾何形的缺省坐標系地理坐標geodetic coordinate經(jīng)緯度坐標,與大地基準點相關投影坐標projected coordinate對應不同的應用目的,有多種投影方式局部坐標local coordinate非地理應用,如CAD等1.2 數(shù)據(jù)模型容差Tolerance容差值用來設定空間數(shù)據(jù)在運算時的精度反映了兩個分離的點被考慮為重合的距離對于地理數(shù)據(jù),容差值的單位是米對于非地理數(shù)據(jù),容差值的

12、單位和坐標系的單位一致越小的容差值對應越高的運算精度可以在圖層元數(shù)據(jù)和某些空間運算參數(shù)中設定容差值,地理數(shù)據(jù)的容差值和具體的應用相關對于非地理數(shù)據(jù),容差值可以設定為數(shù)據(jù)最高精度的0.5倍1.2 數(shù)據(jù)模型容差Tolerance在地理數(shù)據(jù)中設定過大的容差可能引起多邊形相對邊重合而錯誤容差示例a,b的實際距離為0.846049894,應用距離函數(shù)SDO_GEOMETRY.DISTANCE如果圖層容差為0.005,返回0.846049894如果容差設定為0.5,返回00.51.3 查詢模型Spatial采用兩級查詢模型來實現(xiàn)空間查詢和空間連接空間查詢分為兩個獨立的操作,兩次操作的結果合成為最終結果兩個

13、操作分別稱為主過濾Primary filter和次過濾Secondary filter主過濾先進行粗略的比較,快速生成查詢結果的候選幾何對象集合,計算代價小次過濾對來自主過濾的候選集合進行精確的匹配,生成精確的最終結果,計算代價高,但主過濾大大降低了計算復雜度1.3 查詢模型Spatial采用空間索引來實現(xiàn)主過濾,快速從大量數(shù)據(jù)集中找出查詢結果的候選集某些操作可以只進行代價低的主過濾,如地圖顯示的縮放所需進行的查詢1.4 空間索引Oracle Spatial的兩種空間索引R樹R-tree四叉樹quadtree分別適合不同的應用場合可以在一個幾何字段上同時創(chuàng)建兩種索引使用ALTER INDEX的

14、add_index參數(shù)在空間運算中可以指定使用哪個索引如SDO_RELATE的idx_tab1/idx_tab2選項1.4 空間索引R-tree和quadtree比較R-treeQuadtree幾何形的近似形不可調節(jié),采用最小包圍盒可以通過設定分片級別和數(shù)量來調節(jié)幾何形的近似形索引的創(chuàng)建和調整容易調整較復雜,會顯著影響性能相對較少的存儲空間相對較大對最近鄰居SDO_NN查詢較快對最近鄰居查詢較慢更新數(shù)據(jù)的效率較低頻繁更新數(shù)據(jù)不會影響索引的性能可以多到四維空間索引只能在二維空間索引SDO_WITHIN_DISTANCE查詢效率高能夠實現(xiàn)全球的索引1.5 空間關系和條件Spatial在次過濾中實現(xiàn)

15、幾何形之間的空間關系運算Spatial提供了幾個次過濾方法實現(xiàn)空間關系SDO_RELATE測試拓撲關系SDO_WITHIN_DISTANCE測試兩個空間對象是否在指定的距離范圍內(nèi)SDO_NN確定一個空間對象的最近鄰居SDO_RELATE采用9交叉模型來表達點線面之間的空間關系空間關系可以進行組合1.5 空間關系和條件SDO_RELATE1.5 空間關系和條件SDO_WITHIN_DISTANCE先創(chuàng)建B的緩沖區(qū)D,再判定A和D是否相離SDO_NN返回指定個數(shù)的距離A最近的對象1.6 空間聚集函數(shù)定義空間聚集函數(shù)作用于包含若干幾何對象的查詢結果,返回單個SDO_GEOMETRY對象示例:返回查詢

16、結果的最小包圍盒select SDO_AGGR_MBR(shape) from cola_marketSDOAGGRTYPE類型多數(shù)空間聚集函數(shù)以SDOAGGRTYPE類型為參數(shù)CREATE TYPE sdoaggrtype AS OBJECT (geometry MDSYS.SDO_GEOMETRY,tolerance NUMBER);1.6 空間聚集函數(shù)SDOAGGRTYPE類型示例SELECT SDO_AGGR_UNION (MDSYS.SDOAGGRTYPE(c.shape, 0.005) FROM cola_markets c WHERE cola_d;容差值確定了進行

17、聚集操作時的精確度1.6 空間聚集函數(shù)空間聚集函數(shù)包括了SDO_AGGR_CENTROIDSDO_AGGR_CONVEXHULLSDO_AGGR_LRS_CONCATSDO_AGGR_MBRSDO_AGGR_UNION1.7 地理編碼geocoding定義將郵政地址轉換為標準化的地址、坐標位置Spatial可以與地理編碼服務供應上的軟件集成,實現(xiàn)地理編碼的功能2 數(shù)據(jù)類型和元數(shù)據(jù)示例:插入/索引/查詢SDO_GEOMETRY對象類型Geometry示例Geometry元數(shù)據(jù)結構度量單位2.1 示例:插入/索引/查詢可樂市場分析2.1 示例:插入/索引/查詢創(chuàng)建Feature表“可樂市場”cre

18、ate table cola_markets ( mkt_id number primary key, name varchar(32), shape MDSYS.SDO_GEOMETRY)2.1 示例:插入/索引/查詢插入記錄insert into cola_markets values( 1, cola_a, MDSYS.SDO_GEOMETRY( 2003, - 2維多邊形 NULL, NULL, MDSYS.SDO_ELEM_INFO_ARRAY(1,1003,3), -矩形,外部 MDSYS.SDO_ORDINATE_ARRAY(1,1, 5,7) -頂點數(shù)據(jù) );insert in

19、to cola_markets values(. .2.1 示例:插入/索引/查詢更新元數(shù)據(jù)視圖創(chuàng)建空間索引前必需工作,相當于創(chuàng)建圖層insert into USER_SDO_GEOM_METADATA values( cola_markets, shape, MDSYS.SDO_DIM_ARRAY( - 20 x20網(wǎng)格 MDSYS.SDO_DIM_ELEMENT(X, 0, 20, 0.005), MDSYS.SDO_DIM_ELEMENT(Y, 0, 20, 0.005) ), NULL - SRID);2.1 示例:插入/索引/查詢創(chuàng)建空間索引create index cola_spa

20、tial_idxon cola_markets(shape)indextype is MDSYS.SPATIAL_INDEX;-建立r-tree索引-下面的語句建立quadtree索引-parameters(SDO_LEVEL=8);2.1 示例:插入/索引/查詢查詢示例返回a/c市場的交select SDO_GEOM.SDO_INTERSECTION(c_a.shape,c_c.shape,0.005)from cola_markets c_a, cola_markets c_cwhere c_=cola_a and c_=cola_c;返回所有市場的面積select

21、 name, SDO_GEOM.SDO_AREA(shape, 0.005) from cola_markets2.2 SDO_GEOMETRY類型定義create type SDO_GEOMETRY as object ( SDO_GTYPE number, SDO_SRID number, SDO_POINT SDO_POINT_TYPE, SDO_ELEM_INFO MDSYS.SDO_ELEM_INFO_ARRAY, SDO_ORDINATES MDSYS.SDO_ORDINATE_ARRAY);create type SDO_POINT_TYPE as object ( X numb

22、er, y number, z number);create type SDO_ELEM_INFO_ARRAY as varray(1048576) of number;create type SDO_ORDINATE_ARRAY as varray(1048576) of number;2.2 SDO_GEOMETRY類型SDO_GTYPE指明了geometry的類型,對應OGIS幾何對象模型中的類型是一個4位數(shù)字,格式為dltt,其中:d代表geometry的維數(shù):2,3,4l代表線性參照系LRS測量維度,非LRS為0tt指明了geometry的類型,00-07,08-99保留geomet

23、ry的幾個方法可以返回類型值GET_DIMS, GET_LRS_DIM, GET_GTYPE2.2 SDO_GEOMETRY類型SDO_GTYPE值geometry類型說明dl00UNKNOWN_GEOMETRYSpatial忽略本類型dl01POINT點dl02LINE or CURVE折線或者帶圓弧折線dl03POLYGON多邊形dl04COLLECTION異質geometry集合dl05MULTIPOINT點集dl06MULTILINE or MULTICURVE線集dl07MULTIPOLYGON多邊形集2.2 SDO_GEOMETRY類型SDO_SRIDSDO_SRID用來確定geo

24、metry所對應的空間參照系null代表不對應任何參照系非空值必需參照MDSYS.CS_SRS表的SRID字段,同時需要存入USER_SDO_GEOM_METADATA表的SRID字段在同一個字段里的所有geometry對象都必須具有相同的SRID2.2 SDO_GEOMETRY類型SDO_POINT為了性能優(yōu)化而設置的如果SDO_ELEM_INFO和SDO_ORDINATES成員都為空的話,SDO_POINT就是一個POINT對象的坐標值,否則SDO_POINT被忽略如果圖層中僅有POINT對象的話,強烈建議將坐標值存放在SDO_POINT中2.2 SDO_GEOMETRY類型SDO_ELE

25、M_INFO是一個變長的數(shù)值數(shù)組,說明SDO_ORDINATES成員中數(shù)值的意義每三個數(shù)值為一個單元,分別是:SDO_STARTING_OFFSET:元素坐標值從SDO_ORDINATES數(shù)組第幾個數(shù)開始,=1SDO_ETYPE:說明元素的類型,1/21003/2003表明是一個簡單元素;4/1005/2005表明是一個復合元素SDO_INTERPRETATION:當ETYPE=1003/2003,指明解釋SDO_ORDINATES的方式;當ETYPE=1005/2005,指明后面的幾個單元構成復合元素2.2 SDO_GEOMETRY類型SDO_ORDINATES存放坐標值,如何解釋由SDO_

26、ELEM_INFO來指明有效性約束GTYPE=d001/d005(點),則ETYPE=1GTYPE=d002/d006(線),則ETYPE=2/4GTYPE=d003/d007(面),則ETYPE=3/5/1003/2003/1005/20052.3 geometry示例矩形rectangleSDO_GTYPE=2003SDO_SRID=NULLSDO_POINT=NULLSDO_ETYPE=(1,1003,3)1指明本元素坐標偏移量1003表明是簡單元素,外部多邊形3表明是rectangle,只需要兩對坐標SDO_ORDINATES=(1,1,5,7)2.3 geometry示例帶洞的多邊形

27、polygon with a holeSDO_GTYPE=2003SDO_SRID=NULLSDO_POINT=NULLSDO_ETYPE=(1,1003,1,19,2003,1)1,1003,1:從1開始取坐標的外部多邊形/直線連接19,2003,1:從19開始取坐標的內(nèi)部多邊形/直線連接SDO_ORDINATES=(2,4, 4,3, 10,3, 13,5, 13,9, 11,13, 5,13, 2,11, 2,4,7,5, 7,10, 10,10, 10,5, 7,5).2.3 geometry示例混合折線compound line stringSDO_GTYPE=2002 /線SDO_

28、SRID=NULLSDO_POINT=NULLSDO_ETYPE=(1,4,2, 1,2,1, 3,2,2)1,4,2:從1開始取坐標復合折線,2段構成1,2,1:從1開始取坐標簡單線,直線,直到33,2,2:從3開始取坐標簡單線,圓弧,直到最后SDO_ORDINATES=(10,10, 10,14, 6,10, 14,10)直線圓弧2.3 geometry示例混合多邊形compound polygonSDO_GTYPE=2003 /面SDO_SRID=NULLSDO_POINT=NULLSDO_ETYPE=(1,1005,2, 1,2,1, 5,2,2)1,1005,2:從1開始取坐標復合多

29、邊形,2段構成1,2,1:從1開始取坐標簡單線,直線,直到55,2,2:從5開始取坐標簡單線,圓弧,直到最后SDO_ORDINATES=(6,10, 10,1, 14,10, 10,14, 6,10)直線圓弧2.3 geometry示例點pointSDO_GTYPE=2001 /點SDO_SRID=NULLSDO_POINT=MDSYS.SDO_POINT_TYPE(12,14,NULL)SDO_ETYPE=NULLSDO_ORDINATES=NULL(12,14)2.4 geometry元數(shù)據(jù)結構geometry元數(shù)據(jù)內(nèi)容每一維的名稱、上下限和容差值存放在系統(tǒng)表中,用戶不能直接訪問,通過三個

30、視圖來存?。篣SER_SDO_GEOM_METADATA,可以更新ALL_SDO_GEOM_METADATA,只可以查詢DBA_SDO_GEOM_METADATA,DBA可查詢對于每一個幾何類型字段都應該相應更新USER_SDO_GEOM_METADATA視圖2.4 geometry元數(shù)據(jù)結構元數(shù)據(jù)結構TABLE_NAME varchar2(32)記錄幾何字段所在的表名COLUMN_NAME varchar2(32)記錄幾何字段的名稱DIMINFO MDSYS.SDO_DIM_ARRAY由最多4個SDO_DIM_ELEMENT組成,每個SDO_DIM_ELEMENT描述一個維度的信息SDO_D

31、IMNAME:維度名稱,如“x”SDO_LB, SDO_UB:上下限SDO_TOLERANCE:容差值SRID number記錄字段的空間參照系ID2.5 度量單位涉及測量的空間函數(shù)都包括單位選項對于地理相關的geometry,其缺省坐標值單位由SRID決定,大多數(shù)坐標系的單位是米對于SRID為NULL的geometry,沒有單位Spatial通過兩個系統(tǒng)表來判定單位是否有效MDSYS.SDO_DIST_UNITSSDO_UNIT:單位名稱(km/mile/foot)UNIT_NAME:描述信息CONVERSION_FACTOR:和米的轉換比MDSYS.SDO_AREA_UNITS結構同上,F(xiàn)

32、ACTOR是同平方米的轉換比2.5 度量單位示例SELECT , SDO_GEOM.SDO_LENGTH(c.shape, m.diminfo, unit=KM)FROM cola_markets_cs c, user_sdo_geom_metadata mWHERE m.table_name = COLA_MARKETS_CS AND m.column_name = SHAPE;3 索引和查詢空間數(shù)據(jù)創(chuàng)建空間索引查詢空間數(shù)據(jù)空間查詢空間連接3.1 創(chuàng)建空間索引為了高效訪問空間數(shù)據(jù),必須創(chuàng)建索引在數(shù)據(jù)裝入后,創(chuàng)建索引可以是R-tree索引和quadtree索引如果創(chuàng)建過程中中止必須

33、用drop index刪除創(chuàng)建R-tree索引如果create index語句沒有指定quadtree的參數(shù),則自動創(chuàng)建R-tree索引可以在2、3、4維幾何類型字段上建立R-tree索引缺省是2維,3、4維需要通過sdo_index_dims參數(shù)來指定3.1 創(chuàng)建空間索引創(chuàng)建R-tree索引SQL語句create index country_idx on country(shape)indextype is MDSYS.SPATIAL_INDEX;如果在字段上創(chuàng)建了多于2維的索引,部分空間關系和空間操作將被限制SDO_RELATE, SDO_NN, SDO_WITHIN_DISTANCE失效

34、SDO_FILTER正常3.1 創(chuàng)建空間索引創(chuàng)建R-tree索引存儲空間需求設需要索引的表有n條記錄R-tree索引表本身需要占據(jù)70*n字節(jié)空間創(chuàng)建索引過程中需要200*n字節(jié)空間,隨后釋放超過1M條記錄的大型表,還額外需要100*n字節(jié)的臨時排序空間創(chuàng)建索引的參數(shù)(quadtree索引)SDO_LEVEL:固定尺寸分片索引的分片層次,Oracle Enterprise Manager中的Spatial Index Advisor可以用來確定創(chuàng)建索引需要的大約層次SDO_NUMTILES:動態(tài)尺寸分片索引對每個幾何對象分片的數(shù)量,不建議使用動態(tài)分片3.1 創(chuàng)建空間索引創(chuàng)建索引的參數(shù)(quad

35、tree索引)SDO_COMMIT_INTERVAL:索引創(chuàng)建過程是一個事務,為了減少支持事務回滾所需要的空間,可以設定參數(shù)在索引了幾個幾何對象之后即提交一次事務索引地理數(shù)據(jù)geodetic data為了充分利用Spatial的特性,對于包含參照系的地理數(shù)據(jù)應該使用R-tree來創(chuàng)建地理索引quadtree索引只能索引非地理數(shù)據(jù)非地理索引在空間操作中無法使用度量單位和一些選項3.1 創(chuàng)建空間索引約束幾何對象的類型可以在create index或者alter index rebuild語句中的layer_gtype參數(shù)限制創(chuàng)建索引的字段只能包含某類型的幾何對象示例create index cou

36、ntry_idx on country(shape)indextype is MDSYS.SPATIAL_INDEXPARAMETERS (layer_gtype=POLYGON)3.2 查詢空間數(shù)據(jù)主過濾Primary filter操作符SDO_FILTERSDO_FILTER只通過空間索引來判別兩個幾何對象是否相交不進行幾何對象間的操作,只是空間分片進行相交判斷得出的結果可能包含一些不相交的幾何對象SDO_FILTER(g1, g2, params)g1是一個geometry類型字段g2是一個geometry對象,判別是否和g1中的對象相交params是過濾參數(shù),包括querytype3.2 查詢空間數(shù)據(jù)SDO_FILTERquerytype=window將返回1,2,3,43,4不符合相交3.2 查詢空間數(shù)據(jù)SDO_FILTER示例3.2 查詢空間數(shù)據(jù)主次過濾復合運算符SDO_RELATE綜合了主次過濾兩階段,能返回準確的結果SDO_RELATE(g1, g2, params)g1是一個geometry類型字段g2是一個geometry對象,判定與g1的空間關系params包含查詢參數(shù),包括mask, querytype

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論