程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> 淺談Oracle Spatial幾何結構

淺談Oracle Spatial幾何結構

編輯:Oracle數據庫基礎

經過長時間學習Oracle Spatial幾何結構,於是和大家分享一下,看完本文你肯定有不少收獲,希望本文能教會你更多東西。由於傳統的 GIS 技術已達到其本身可伸縮性和可*性的極限,用戶越來越多地轉向以數據庫為中心的空間計算。Oracle Spatial將空間過程和操作直接轉移到數據庫內核中,從而提高了性能和安全性。Oracle Spatial從1995年Oracle 7.1.6開始發展到2003年的10G版本,空間數據處理能力越來越強大。

Oracle Spatial將所有的地理空間數據類型(矢量、柵格、網格、影像、網絡、拓撲)統一在單一、開放的、基於標准的數據管理環境中,這就減少了管理單獨、分離的專用系統的成本、復雜性和開銷。Oracle Spatial不但具有傳統GIS的所有特性,,而且還具有關系數據庫的特性,這些特性擴展了應用程序開發人員的工作范圍並提供了他們的生產率,因而能支持更廣泛的應用程序並提高性能主要表現在:

1) Oracle Spatial幾何結構和空間參照
Oracle Spatial 支持三種基本的幾何形狀,這些幾何形狀可分別用於表示那些通常構成空間數據庫的特征,如道路、管理邊界、公共設施等。這些空間基礎元素包括:
◆點和點簇:點可以表示建築、消防栓、電線桿、鑽井、貨車車廂或移動的交通工具等位置。
◆線和線串:線可以表示道路、鐵路線、公用設施管線或故障線等。
◆多邊形和帶孔的復雜多邊形:多邊形可以表示城市、街區、河漫灘或油田和天然氣田的輪廓。

帶孔的多邊形可以表示由一片沼澤環繞的一小塊土地。為了有效地集成和表示空間信息,Oracle Spatial 提供了豐富的工具來管理坐標系統和投影。支持 950 多種常用的制圖坐標系統,而且用戶還可以定義新的坐標系統。Oracle Spatial 還支持在不同的坐標系統間任意轉換數據。這些轉換一次可以在一個幾何級上或者整個圖層上進行。

2) 空間索引:R-tree
為了優化空間查詢的性能,Oracle Locator 為關系數據庫提供了空間索引功能。Oracle Locator 提供 R-tree 索引創建功能,該功能生成和存儲幾何結構的近似值作為索引。R-tree 索引易於創建和使用 — 幾乎不需要調整即可獲得最佳性能。可以在空間數據的兩個、三個或四個維度上創建 R-tree 索引。

3) 空間操作符
各種幾何特征的交互作用可以通過使用比較操作符來確定,如 contains、covers 和 anyinteract(任何交互作用)。這樣就可以答復類似下列的請求:“列出這條鐵道線穿過的所有校區”或“找出這個城市中所有的花店”

4) 基於函數的索引支持
現在不需要將位置信息顯式地存儲為 SDO_GEOMETRY 類型的列即可在關系屬性上執行空間查詢。用戶可以對存儲在關系列(例如經度和緯度)中的空間數據上創建空間索引。然後用戶可以在這些關系列上調用空間操作符,而無需創建一個 SDO_GEOMETRY 列。

5) 大地坐標支持
就地表測量而言,無論坐標系統是什麼,空間函數、操作符和公用程序都提供正確的結果。距離、面積和角度等單位都獲得了全面的支持。

6) 空間索引的分區支持
空間索引可以根據分區表進行分區。對空間數據分區並使用分區的本地索引,可以為大型數據集上的查詢以及並發查詢與更新提供性能增益。它還使索引的維護更加容易。

7) 並行創建空間索引
索引創建可以被細分成能並行執行的更小的任務,以便利用未使用的硬件 (CPU) 資源。對於某些空間數據庫以及索引類型和數據來說,並行索引創建能充分提高索引構建性能並顯著節約時間。

8) 線性參照支持
Oracle Spatial 將“測量”信息存儲為 Oracle Spatial幾何結構的一部分。此特性對於線性聯網和動態分割應用程序很關鍵,這些應用程序常見於互聯網街道路徑搜索、運輸、公用設施和電信網絡以及管線管理。

9) 空間聚集
空間聚集函數概括了與幾何對象相關的 SQL 查詢結果。空間聚集函數返回類型為 SDO_GEOMETRY 的幾何對象。空間聚集的使用提高了性能,降低了底層代碼的復雜性。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved