热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

SQLServer2008中使用空间数据实现位置智能

如今的信息工作人员和消费者需要处理大量不同类型的信息,从电子表格和数据库中商业数据的传统数据表,到在线的基于媒体的数据(例如视频、照片和音乐)。近来

如今的信息工作人员和消费者需要处理大量不同类型的信息,从电子表格和数据库中商业数据的传统数据表,到在线的基于媒体的数据(例如视频、照片和音乐)。近来朝向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 椭球体。

 图2:一个平面模型

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


推荐阅读
  • 设计模式系列-原型模式
    一、上篇回顾上篇创建者模式中,我们主要讲述了创建者的几类实现方案,和创建者模式的应用的场景和特点,创建者模式适合创建复杂的对象,并且这些对象的每个组成部分的详细创建步骤可以是动态的变化的,但 ... [详细]
  • UMPlatForm.NET 5.1 版本数据字典管理功能解析
    本文介绍了 UMPlatForm.NET 5.1 版本中的数据字典管理模块,探讨了该模块如何支持平台的数据共享与管理,以及如何通过用户和角色权限来增强系统的安全性。 ... [详细]
  • 本文档提供了详细的MySQL安装步骤,包括解压安装文件、选择安装类型、配置MySQL服务以及设置管理员密码等关键环节,帮助用户顺利完成MySQL的安装。 ... [详细]
  • Android开发经验分享:优化用户体验的关键因素
    随着Android市场的不断扩展,用户对于移动应用的期望也在不断提高。本文探讨了在Android开发中如何优化用户体验,以及为何用户体验的重要性超过了技术本身。 ... [详细]
  • 本文讨论了在处理分页数据时常见的低级错误,并提供了优化后的代码示例,以减少重复代码并提高可读性和维护性。 ... [详细]
  • PHP网站部署指南:从零开始搭建PHP网站
    本文提供了详细的步骤指导,帮助开发者在不同环境下成功部署PHP网站,包括在IIS和Apache服务器上的具体操作。 ... [详细]
  • 本文介绍了如何使用PHP进行SQL Server 2010数据库的分页查询,包括设置每页显示的记录数和当前页码,并通过SQL语句实现数据的分页展示。 ... [详细]
  • 本文旨在为初学者提供一个详细的指南,从零开始学习如何使用 ASP.NET MVC5 和 Entity Framework 6 (EF6) 搭建项目。通过逐步指导,帮助读者理解 MVC 架构的核心概念,并掌握基本的操作方法。 ... [详细]
  • J2EE平台集成了多种服务、API和协议,旨在支持基于Web的多层应用开发。本文将详细介绍J2EE平台中的13项关键技术规范,涵盖从数据库连接到事务处理等多个方面。 ... [详细]
  • 抽象工厂模式 c++
    抽象工厂模式包含如下角色:AbstractFactory:抽象工厂ConcreteFactory:具体工厂AbstractProduct:抽象产品Product:具体产品https ... [详细]
  • 代码生成器实战教程:提升编程效率的利器
    本系列文章旨在通过一系列实践案例,详细介绍如何利用代码生成器提高开发效率。本文将引导您完成从下载安装到实际应用的全过程。 ... [详细]
  • 本文探讨了HTA(HTML Application)环境中HTML5 IndexedDB的可用性问题,并提供了一种替代方案,即通过使用COM ActiveX对象来实现数据存储功能。 ... [详细]
  • Navicat Premium中MySQL用户管理:创建新用户及高级设置
    本文作为Navicat Premium用户管理系列的第二部分,主要介绍如何创建新的MySQL用户,包括设置基本账户信息、密码策略、账户限制以及SSL配置等。 ... [详细]
  • 本文介绍了多种Eclipse插件,包括XML Schema Infoset Model (XSD)、Graphical Editing Framework (GEF)、Eclipse Modeling Framework (EMF)等,涵盖了从Web开发到图形界面编辑的多个方面。 ... [详细]
  • 深入浅出:Hadoop架构详解
    Hadoop作为大数据处理的核心技术,包含了一系列组件如HDFS(分布式文件系统)、YARN(资源管理框架)和MapReduce(并行计算模型)。本文将通过实例解析Hadoop的工作原理及其优势。 ... [详细]
author-avatar
好好地经历这每一天
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有