SQL Server 2008中使用空间数据实现位置智能

数据库 SQL Server
随着商业客户和最终消费者处理大量数据的能力不断增强,再加上数字地图和利用三维地理空间的应用程序不断改进,都使得我们迫切的需要对地理信息数据进行分析和决策。Microsoft SQL Server™ 2008对于空间数据提供了支持,从而通过对SQL Server 数据库中存储的位置数据进行视觉分析,最终帮助您做出更好的决定。

如今的信息工作人员和消费者需要处理大量不同类型的信息,从电子表格和数据库中商业数据的传统数据表,到在线的基于媒体的数据(例如视频、照片和音乐)。近来朝向mash up解决方案(mash up解决方案是指合并从多个来源获得的信息和内容来创建通用的在线应用程序)发展的趋势表明计算机用户使用高度集成的解决方案来利用它们可用的大量信息。

同时,技术优势导致地理服务和设备的发展,包括在线绘制地图解决方案,例如Microsoft® Virtual Earth™,和较便宜的全球定位系统(GPS)解决方案。曾经只用于地理信息系统(GIS)专业人员的技术现在广泛的应用于每一个人。

这两个因素为软件应用程序带来了新的期望和机遇。地理服务的普遍性,和用户使用数据所采用的混合度的提高意味着这个空间信息只是合成到解决方案中的另一个组件,并且是作出更好决策和提供更高的价值服务的一个基础。

空间数据有多种使用方式,如下面的示例列表所描述的:

◆一个零售商网站可以将所有的存储位置作为一个地图上的点显示出来,并按照所给的邮政编码找到最近的存储位置。

◆一个销售经理可以定义地理销售区域,并使用它们将客户和销售代表匹配起来,并对销售情况进行分析。

◆一个架构师可以为创建一个新的架构制定计划,并将这些计划覆盖到一个给定的站点地图上。

◆一个驱动器可以找到两个位置间的距离,并制定路由路线。

◆一个房地产经纪人可以快速地根据某个客户的要求找到匹配的房子,例如在华盛顿湖岸边的超过20000平方英尺的房子。

◆一个移动应用程序可以找到所有给定位置的10公里范围内的加油站。

这些例子只显示了空间数据集成到软件应用程序中所产生的一些可能案例。

SQL Server 2008通过引入新的空间数据类型提供了对地理数据的支持,你可以使用它来存储和操纵基于位置的信息,SQL server 2008中的空间支持可以帮助用户通过分析例如下面所示的场景中的位置数据来作出更好的决策:

◆关注于消费者的基于位置的信息

◆基于客户的管理和开发

◆与环境相关的数据的影响、分析和计划

◆公司中的财务和经济分析

◆基于政府的计划和开发分析

◆市场分割和分析

◆科学研究设计和分析

◆房地产开发和分析

这篇白皮书对SQL Server 2008中的全面的空间数据支持做了高层次的介绍,并描述了其高性能的空间能力和位置智能应用程序的可扩展性。

对空间数据的全面支持

SQL Server 2008通过新的数据类型提供了广泛的空间支持。要理解你可以怎样使用这些数据类型来存储位置智能的数据,你首先需要了解空间数据——特别是地理数据——是怎么工作的。

空间模型

空间数据是用于显示一个表面的点、线和区域的。一般情况下,这些元素与地球上的实际物理位置有关,所以它们可以被称为地理数据。我们已经通过使用地球仪和地图熟悉了这个概念,它们一般显示了多个地理特性和它们的相对位置。

大地测量空间模型

描述一个行星表面位置的困难就在于行星不是平的。地球是一个非常复杂的对象,它可以近似的看作是一个扁椭圆体,一个(稍微)有点平坦的球体。地球的一个准确表示通常是通过地球仪来显示的,在它上面行星表面的位置是通过经度和纬度来表示的,它们是根据从赤道开始和按照相应的国际日界线所测量得到的。这个建立地理位置模型的方法被称作大地测量模型,它提供了一个定义如图1所示的地球仪上的位置和对象的精确方法。现在全球在使用几个不同的大地测量模型,包括英国的国家地图地理系统所使用的Airy 1830 椭球体,和全球的GPS解决方案所使用的WGS84 椭球体。

 

图1: 一个大地测量模型

平面空间模型

一个大地测量模型提供了最精确的方法来显示地理特性,它使用一个椭圆体并考虑了行星的弯曲程度,这在以前人们必须使用平面地图时要计算距离是非常困难的。过去,使用二维表面或平面是非常方便的,所以在许多平面(平坦)模型中显示的一般都是基于位置的数据。现在要在一个平面二维表面使用地理数据,就要创建一个投影来展平椭球体上的地理对象。有了大地测量模型,就产生了很多用于将地球的地理特性设计到一个平坦的表面上的数学模型,包括Mercator投影、Peters投影,和Lambert Conformal Conic投影。图2显示了一个基于Mercator投影的地球平面模型。

 图2:一个平面模型

无论使用哪个投影,将一个椭球体上的地理数据转换成平面表面总会导致结果地图上的地理特性方面的一些形状、尺寸或位置(或三者都有)上的失真,这就是为什么在图2中的投影中格陵兰显示如美国一般大小,而事实上它的土地面积要小很多。一般来说,投影的表面面积越大,失真就越严重——地图边缘的地方的失真程度要大于中心位置的失真程度。为此,平面模型用于较小的地理区域比较好,例如单个的国家、州和城镇,或者是没有投影的空间表面,例如内层布置图。

【编辑推荐】

  1. 详解SQL Server 2008空间数据类型
  2. SQL Server 2008中使用空间数据实现位置智能
  3. SQL Server数据库优化经验总结
责任编辑:彭凡 来源: 51CTO
相关推荐

2011-02-21 13:06:42

Microsoft S

2011-02-21 13:41:14

SQL Server

2011-02-21 13:06:34

SQL Servr 2

2009-04-16 17:55:55

SQL Server 空间数据.NET

2011-03-22 10:20:18

Bing MapsSQL Server

2011-03-22 09:17:12

SQLCRLSQL Server

2011-03-22 15:10:49

Bing MapsSQL Server

2011-09-01 13:24:42

SQL Server 呈现GeoRSS订阅的Bing Maps

2011-02-21 10:47:44

Microsoft S

2011-02-21 10:26:53

Microsoft S

2009-08-28 11:38:15

MapPoint

2011-02-21 13:23:54

微软 SQL Serv

2011-03-22 15:36:44

Spatial TooSQL Server

2009-01-20 13:39:56

数据挖掘空间数据方法

2009-04-16 17:53:09

SQL Server 应用程序扩展性

2022-03-30 09:30:00

数据库地理空间查询SQL

2010-09-07 16:28:58

DB2 空间数据

2011-08-15 17:55:49

提取MapInfo地图SQL Server

2011-08-29 18:02:29

SQL Server FileStream

2011-09-01 13:09:58

SQL Server DataTable作为
点赞
收藏

51CTO技术栈公众号