成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

SQL Server 2008空間數據應用系列二:空間索引(Spatial Index)基礎

開發
  在SQL Server 2008 空間應用系列一中介紹了一些關于地理信息的基礎知識,空間參照系統。 本篇主要介紹地理空間索引的概念以及微軟的SQL Server 2008R2中的空間索引的應用。

Microsoft SQL Server 2008 提供了全面性的空間支持,可讓組織通過具有空間功能的應用程序來無縫地取用、使用及擴展以位置為基礎的數據,***協助用戶做出更好的決策。本篇文章著重介紹的是空間索引的概念微軟SQL Server 2008空間索引的應用。

一、空間索引

  空間索引是指依據空間對象的位置和形狀或空間對象之間的某種空間關系按一定的順序排列的一種數據結構,其中包含空間對象的概要信息。作為一種輔助性的空間數據結構,空間索引介于空間操作算法和空間對象之間,它通過篩選作用,大量與特定空間操作無關的空間對象被排除,從而提高空間操作的速度和效率。

 

  來至百科的定義:為便于空間目標的定位及各種空間數據操作,按要素或目標的位置和形狀或空間對象之間的某種空間關系來組織和存儲數據的結構。

 

  關于更多空間索引的知識點需要深入了解EPSG和SRID,本文主要介紹基于微軟SQL Server 2008的空間數據特性實現介紹,故不詳細介紹這些基礎理論知識點,有興趣的可以訪問文末的推薦資料鏈接,了解更多關于EPSG核SRID的相關知識。

 

  SQL Server 2008中的空間數據類型作為CLR系統類型來執行。SQL Server 2008增加了數據庫中的CLR類型的***規模,提高了原來在SQL Server 2005中的8000字節的限制,這使得它可以存儲非常復雜的空間數據元素,例如通過許多點定義的多邊形。通過在關系表中存儲空間數據,SQL Server 2008 使得可以結合空間數據到其他任何商業數據類型中去;這消除了對維護一個單獨的只用于空間數據存儲的維護要求,并使得可以做高性能查詢,它不需要結合從多個外部來源獲得的數據。

 

  在SQL Server 2008中對空間索引的支持進一步增強了對空間數據的查詢操作。你可以用一個集成在SQL Server數據庫引擎中的適合的多級網格索引來檢索空間數據。空間索引包含一個基于網格的層級,在其中每一級索引又細分為由上一級所定義的網格區域。下圖為官方給出的一個空間索引的概率模型圖:

1

  SQL Server查詢優化器會作出基于成本的決策,決定對給定的查詢使用哪種索引,并且因為空間索引是數據庫引擎的一個完整部分,可以作出關于是否使用特殊的空間索引的基于成本的決策,就像其它索引一樣。

二、SQL Server 2008的空間參考系統

  微軟SQL Server 2008的空間系統表(實際上是一個系統視圖)"sys.spatial_reference_systems"中存儲了詳細的支持所有大地測量空間參考系統標準,該表中的每一行數據對應于一個唯一的空間參考系統,可以基于這些空間參考系統在SQL Server 2008中來定義任何形式的空間數據。 

2

 

  系統表“sys.spatial_reference_systems”中實際上僅僅只是存儲了應用于SQL Server 2008中地理參照坐標的參考系統,除了空間參考系統可以使用這張表中列出的參考系統標準,也可以基于這些標準來定義基于任何地理投影的空間數據。

 

三、空間參照文本格式(WKT)

  Well-Known Text (WKT) Representation of Spatial Reference Systems:顧名思義用眾所周知的文字形式來描述看見坐標參考系統,它與EPSG(2005年已經換名)的坐標文字表述模型一致。WKT字符串應用于確定空間參考系統的組成部分的描述,其定義主要包含以下10項內容:

  1、一個總體的坐標系名

  2、一個地理圖形坐標系統名
  3、一個基準面定義
  4、一個橢球體的名字。長半軸(semi-major axis)和反扁率(inverse flattening)
  5、本初子午線(prime meridian)名和其與格林威治子午線的偏移值
  6、投影方法類型(如橫軸莫卡托)
  7、投影參數列表(如中央經線等)
  8、一個單位的名稱和其到米和弧度單位的轉換參數
  9、軸線的名稱和順序
  10、在預定義的權威坐標系中的編碼(如EPSG)

  1. select well_known_text   
  2. from sys.spatial_reference_systems   
  3. where authorized_spatial_reference_id=4326   
  4. and authority_name='EPSG' 

  基于sys.spatial_reference_systems表定義了多種不同的空間參照系統的WKT描述,如上SQL語句查詢出的是我們平時在地圖應用開發中使用最多的EPSG:4326空間參照系統標準,則對于的WKT如下:

  1. GEOGCS["WGS 84",   
  2.         DATUM["World Geodetic System 1984",   
  3.         ELLIPSOID["WGS 84", 6378137, 298.257223563]],   
  4.         PRIMEM["Greenwich", 0],   
  5.         UNIT["Degree", 0.0174532925199433]  
  6.       ]  

  以上KWT字符串確定了EPSG:4326空間參照系統的組成部分元素描述,其主要使用了四種空間配置,分別為:基準(Datum)、橢圓(Ellipsoid)、本初子午線(Primem)和Unit(計量單位)。關于這些空間參考系統參數在上一篇文中中介紹過,這里就不在做重復介紹,以上KWT字符串表述的意思大致是這樣的:“WGS 84坐標系,采用1984年訂立的世界地理坐標系統標準,地理標準半徑為:6378137........”。

 

四、SQL Server 2008的空間索引

  SQL Server 2008 引入了對空間數據和空間索引的支持。“空間索引”是一種擴展索引,允許您對空間列編制索引。空間列是包含空間數據類型(如 geometry 或 geography)數據的表列。本節中的主題介紹了空間索引。

 

  在 SQL Server 2008 中,空間索引(存儲在:sys.spatial_indexes表中)使用 B 樹構建而成,也就是說,這些索引必須按 B 樹的線性順序表示二維空間數據。因此,將數據讀入空間索引之前,SQL Server 2008 先實現對空間的分層均勻分解。索引創建過程會將空間分解成一個四級“網格層次結構”。這些級別指的是“第 1 級”(***)、“第 2 級”、“第 3 級”和“第 4 級”。

 

  每個后續級別都會進一步分解其上一級,因此上一級別的每個單元都包含下一級別的整個網格。在給定級別上,所有網格沿兩個軸都有相同數目的單元(例如 4x4 或 8x8),并且單元的大小都相同。下圖顯示了網格層次結構每個級別的右上角單元被分解成 4x4 網格的情況。事實上,所有單元都是以這種方式分解的。因此,以此為例,將一個空間分解成四個級別的 4x4 網格際上會總共產生 65,536 個第四級單元。針對空間索引進行的空間分解與應用程序數據使用的度量單位無關。

4.1

   

 

 

  網格層次結構的單元是利用多種 Hilbert 空間填充曲線以線性方式編號的。然而,出于演示目的,這里使用的是簡單的按行編號,而不是由 Hilbert 曲線實際產生的編號。在下圖中,幾個表示建筑物的多邊形和表示街道的線已經放進了一個 4x4 的 1 級網格中。第 1 級單元的編號為 1 到 16,編號從左上角的單元開始。

4.2

   

  沿網格軸的單元數目確定了網格的“密度”:單元數目越大,網格的密度越大。例如,8x8 網格(產生 64 個單元)的密度就大于 4x4 網格(產生 16 個單元)的密度。網格密度是以每個級別為基礎定義的。網格配置單元數目低 :4X4 =16,中8X8 = 64,高16X16 =256,默認設置所有級別都為 中。

 

  您可以通過指定非默認的網格密度控制分解過程。例如,在不同級別指定不同網格密度對于基于索引空間的大小和空間列中的對象來優化索引可能非常有用。空間索引的網格密度顯示在 sys.spatial_index_tessellations 目錄視圖的 level_1_grid、level_2_grid、level_3_grid 和 level_4_grid 列中。

 

  將索引空間分解成網格層次結構后,空間索引將逐行讀取空間列中的數據。讀取空間對象(或實例)的數據后,空間索引將為該對象執行“分割過程”。分割過程通過將對象與其接觸的網格單元集(“接觸單元”)相關聯使該對象適合網格層次結構。從網格層次結構的第 1 級開始,分割過程以“廣度優先”方式對整個級別進行處理。在可能的情況下,此過程可以連續處理所有四個級別,一次處理一個級別。

 

  注:以上內容截取SQL Server 2008幫助文檔,詳細請查看聯機幫助文檔。

五、相關資料

  [1]、EPSG:http://en.wikipedia.org/wiki/European_Petroleum_Survey_Group

  [2]、SRID:http://en.wikipedia.org/wiki/SRID

  [3]、WKT:http://en.wikipedia.org/wiki/Well-known_text

  [4]、空間索引概論:http://www.cnblogs.com/terryfeng/archive/2009/05/27/1490803.html

總結:

通過本文我們了解了空間索引的概念和微軟SQL Server 2008 空間索引的應用,在后續文章中將了解SQL Server 2008 空間數據類型。

【編輯推薦】

  1. SQL Server 2008應用 阻塞(Blocking)
  2. 微軟 SQL Server 2008中自動化數據采集器
  3. SQL Servr 2008空間數據應用系列一:空間信息基礎知識
  4. 微軟SQL Server 2008令商業智能平民化
  5. SQL Server 2008幾項新特性概述

 

責任編輯:佚名 來源: 博客園
相關推薦

2011-02-21 13:06:42

Microsoft S

2011-02-21 10:26:53

Microsoft S

2011-02-21 13:23:54

微軟 SQL Serv

2011-03-22 15:36:44

Spatial TooSQL Server

2011-03-22 10:20:18

Bing MapsSQL Server

2011-03-22 15:10:49

Bing MapsSQL Server

2011-02-21 13:41:14

SQL Server

2011-03-22 09:17:12

SQLCRLSQL Server

2011-09-01 13:24:42

SQL Server 呈現GeoRSS訂閱的Bing Maps

2009-04-16 17:55:55

SQL Server 空間數據.NET

2011-02-21 13:06:34

SQL Servr 2

2009-08-28 11:38:15

MapPoint

2009-04-16 17:38:24

SQL Server 空間數據智能

2009-01-20 13:39:56

數據挖掘空間數據方法

2010-05-07 12:35:05

Oracle spat

2010-03-29 11:31:45

2010-09-07 16:28:58

DB2 空間數據

2022-03-30 09:30:00

數據庫地理空間查詢SQL

2022-09-14 11:27:19

物聯網大數據智慧城市

2011-08-15 17:55:49

提取MapInfo地圖SQL Server
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产乡下妇女做爰 | 黄网址在线观看 | 天天躁日日躁狠狠很躁 | 99精品免费 | a级在线 | 久久久久久久久久久久久久久久久久久久 | 亚洲成人精品 | 国产色婷婷精品综合在线播放 | 久久精品国产一区二区电影 | 91精品国产综合久久婷婷香蕉 | 激情欧美一区二区三区中文字幕 | 亚洲热在线视频 | 久久成人精品一区二区三区 | 91就要激情| 中文字幕蜜臀 | 欧美国产激情 | 亚洲一区二区三区桃乃木香奈 | 羞羞的视频网站 | 成人国产精品久久久 | 国产精品自产av一区二区三区 | 福利社午夜影院 | 亚洲色综合 | 99在线国产 | 欧美成人精品一区二区男人看 | 国产精品久久久久久吹潮 | 日韩免费视频一区二区 | 久久久九九九九 | 欧美成人二区 | 91在线精品秘密一区二区 | 亚洲视频在线播放 | 久久久久久国产精品免费免费狐狸 | 51ⅴ精品国产91久久久久久 | 在线观看你懂的网站 | 在线免费观看色 | 日韩精品在线观看视频 | 麻豆精品久久久 | 亚洲一区二区三区在线播放 | 国产高清在线精品 | 久久精品视频在线免费观看 | 国产精品久久网 | 香蕉久久a毛片 |