ORACLE LOCATOR 

本文讲述了与 Oracle9i Locator 相关的新特性,并帮助确定它与 Oracle Spatial 产品的关系。Locator 为支持基于 Internet 和无线服务的应用程序提供了重要的特定功能。Locator 也包含了支持基于合作伙伴的 GIS 解决方案的功能。对于希望利用定位功能的客户来说,Locator 为升级到版本 9i 提供了令人信服的理由。


大多数商务信息都有位置组件,例如经过地理编码的客户地址、销售地域及无线服务范围。商务可以通过在信息系统中结合位置分析来利用地理信息。启用定位的电子商务应用程序为决策者提供有效观察商务运作的全方位观察。

Oracle9i 使电子商务应用程序、门户和无线服务提供商可以轻松地在公司信息系统中集成位置数据。这意味着象呼叫中心这样的电子商务应用程序以及市场和销售应用程序可以轻松地结合地图绘制与空间分析。Oracle9i 也为一类新的位置应用程序提供了基础。这些基于位置的服务包括门卫服务(例如,在地理编码黄页数据库中进行位置查询以提供关于服务商店、旅馆、饭店等的信息);紧急服务 (E911、511);以及各种面向用户的其他服务,这些服务可以是基于 Web 的或者是无线的。

Oracle Locator 是 Oracle interMedia 的一个功能部件,它为 Oracle9i 提供基于位置的服务。它为位置信息提供数据管理,包括一个为点、线、多边形提供的 Oracle 本地空间数据类型 (SDO_GEOMETRY);操作符;空间索引;及简单的位置分析。开发者可以扩展现有的基于 Oracle 的应用程序,因为他们可以利用 Oracle9i 轻松地把位置信息直接结合到自己的应用程序和服务中。位置数据完全集成到 Oracle 服务器本身使之成为可能。地理和位置数据采用与所有 SQL 用户熟悉的 CHAR、DATE 或 INTEGER 类型相同的语法操纵。

特有的 Locator 特性包括:

  • 一个描述和支持几何结构如点、线、多边形的对象类型。
  • 快速参考树 (R-tree) 和四叉树索引
  • 使用空间索引执行空间查询的空间操作符,用以确定几何特征的交互
  • 对空间操作的开放式标准 SQL 访问
  • 与第三方地理编码工具紧密集成
  • 全面的存储、管理和使用地理数据
  • 与 Oracle9i Application Server Wireless(无线版)集成
Oracle Locator 不是为复杂 GIS 应用程序提供的解决方案对于这样的应用程序,Oracle9i 企业版的一个选件 Oracle Spatial 提供了它所需的功能,例如空间函数(包括区域、缓冲、质心计算)、高级坐标系统支持、线性参照系统和聚合函数。

本一览表稍后会提供一个 Locator 特性的完整列表,以及关于 Locator 和 Spatial 功能差异的详细信息。

空间几何,层
Oracle Locator 支持三种表示地理和位置数据的基本几何形状:

  • 点和点集簇:点可以表示建筑物、消防栓、公用电线杆、石油钻塔、货车车厢或移动的车辆等的位置。
  • 线和一组线:线可以表示公路、铁路线、公用航线或断层线等。
  • 多边形和有孔的复杂多边形:多边形可以表示城市轮廓、行政区、水灾泛滥平原或油田和气田。有孔的多边形可以在地理上表示环绕一块沼泽地的陆地。


在内部,地理或位置数据存储在 Oracle 表的普通列中。存储在列中的地理或位置数据应该与该表的所有其他属性列具有一对一关系。这也被称为一个层。层的示例包括行政区或社会经济学邻居、商务区或居住区、以及水、煤气、下水道或电线。所有这些层都可以通过 Locator 的 SQL 查询与位置相关联。

除了上面提到的几何元素之外,Oracle Locator 还支持以下几何类型:

  • 弧线组
  • 混合线组
  • 混合多边形
  • 矩形
空间索引:参考树和四叉树
Oracle9i 把空间索引应用到关系型数据库的所有数据上。Oracle Locator 包含了参考树和四叉树索引功能。参考树索引可以用于索引 2、3、4 维数据——这对于解决石油勘探、建筑、工程和其他科学应用中的问题是很关键的。参考树索引可以用来代替四叉树索引,或者和它一起使用。

典型的查询指定一个感兴趣的窗口并检索贯穿或包含在即席查询窗口中的所有数据。

参考树索引使用围绕几何结构的最小单个矩形(称为最小边界矩形,或 MBR)来模拟每个几何结构。

对于几何结构的一层,参考树索引由该层几何机构的最小边界矩形的分层索引组成。因为参考树索引速度很快而且直接操作地理数据,所以它是操作空间数据的首选索引机制。地理数据是由相对于地球形状的一个特定表示或基准点而定义的坐标所组成的数据。地理坐标由经度、纬度对组成。
 


 

利用四叉树索引,可以为每一层创建地理表示数据的镶嵌覆盖图案。然后该图案的二进制表示会存储在空间索引中。覆盖图案可以快速检查层之间的任何相交。当位置数据添加到数据库时,一个空间四叉树索引会细分(或“镶嵌为小方格”)图案,保留数据的空间结构。数据库设计者可以指定几何结构被细分的倍数,以使用越来越小的均匀图案来优化覆盖。四叉树索引可以用于 2 维数据。

数据库设计者可能需要选择使用参考树还是四叉树索引。尽管参考树索引凭借其直接操作地理数据的功能通常成为最佳选择,但是每一种索引类型都适合于不同的情形。四叉树在一种情形下是更优越的:即当数据集仅由点数据组成并且需要频繁更新,而且更新性能非常重要时。

选择使用哪种索引时考虑的事项包括:

  • 测量的或非测量的
  • 提交给数据库的查询的类型和范围
  • 更新和要求重新索引的频繁程度
  • 可用的磁盘存储空间
  • 更新的数量
  • 空间数据的维数
空间索引使用 Oracle9i 扩展索引机制在插入、更新和删除操作时提供对索引的维护。这增加了使用的方便性。

空间操作符
各种几何结构部件的交互可以使用操作符来确定,它使用 containscoversanyinteract (任意相交)等这样的表征码。它可以回答诸如“列出这条铁路线经过的所有校区”或“查找感兴趣区域的所有比萨饼店”这样的请求。

Locator 提供了一个计算两个几何对象间距离的空间函数。这对于基于位置的服务查询是很有用的,例如回答距离我办公室最近的 10 个自动柜员机 (ATM),以及到每一个自动柜员机的距离。更多的高级函数例如计算区域或返回缓冲、矩心、合并、相交或空间聚合这样的新的几何结构需要使用 Oracle Spatial 产品。

使用双重查询快速访问
直到现在,数据库性能已经在很大程度上成为数据库规模和索引效率的要素。但是在 Oracle9i 和 Oracle Locator 中,性能是实际检索数据的数量的函数。通过使用空间索引和双重查询模型,性能得到了优化。此模型极大地降低了负载和查询处理开销,而且在空间数据大量增长时提供了卓越的可伸缩性。第一重,或初级过滤器,允许快速选择数量很少的候选记录,并将其传递到第二重过滤器。初级过滤器使用近似来降低计算复杂度。

第二重过滤器将精确的计算几何结构应用于初级过滤器所产生的结果集。这些精确的计算会产生查询的最后答案。第二次过滤操作的计算密集程度更高,但仅应用于经过初级过滤器所产生的相对小的结果集。

查询可以在空间上约束,例如用一个用户选择的“感兴趣区域”定义。在查询期间不考虑感兴趣区域之外的数据,以确保获得最优的性能等级。

改良可管理性的图形化工具
Oracle Enterprise Manager 通过易于使用的图形化用户界面简化了空间表和索引的创建及管理。它支持四叉树和新的参考树索引。一个智能化的空间索引图案向导 (Spatial Index Tiling Wizard) 为数据库管理员提供创建高效空间四叉树索引的推荐参数。

Spatial Index Advisor 集成在 Oracle Enterprise Manager 架构之中,它可以帮助数据库管理员分析和调整 Oracle Spatial 索引,以获得最佳的空间查询性能。

地理编码
地理编码是把地理参照物如地址、电话号码和邮政编码与位置坐标(例如,经度/纬度)相关联的过程。Oracle9i 可以集成所有的第三方地址编码工具和服务,使用已经存储在数据库中的经度/纬度点匹配这些记录。用户可以选择最好的地理编码程序来满足他们的需求(例如,一个提供国际地址支持的地理编码服务)。这简化了基于相关数据空间关系的分析,例如给定距离内距客户最近的存储位置和每个地域的销售收入之间的关系。

基于 Web 的或本地安装的地理编码软件包都可以作为基本空间数据仓库组件与数据库服务器紧密集成。

基于函数的索引支持
基于函数的空间索引简化了对关系属性的位置查询,因为它不需要显式地把位置信息存储为 SDO_GEOMETRY 类型的列。用户可以对存储在关系列中的空间数据创建空间索引(例如,经度和纬度列)。无需创建 SDO_GEOMETRY 列,该空间索引就可以在这些关系列上调用空间操作符。

对于那些拥有存储位置数据模式、但不愿修改当前模式以把空间数据移到 SDO_GEOMETRY 类型列中的商务地理应用程序,这是很有用的。

注意:标准版并不支持这一特性。

测量坐标支持
不管采用哪种坐标系统(与地球表面尺寸有关),Locator 的操作符和距离函数都能提供正确的计算结果。

空间索引的分区支持
Oracle9i 的另外一个新特性是能够划分与分区的表有关的空间索引。分区的空间索引可以提供以下好处:

  • 缩短长时间运行查询的响应时间;分区减少了磁盘的 I/O 操作
  • 缩短并发查询的响应时间;I/O 操作并发运行在每个分区上
  • 简化索引维护,这是因为分区级的创建和重新构建操作
  • 分区上的索引可以被重新构建,而且不会影响其他分区上的查询
    每个本区索引存储参数都可以独立于其他分区修改。

注意:这一特性需要用到企业版的 Partitioning 选件,而且标准版并不支持该特性。

>> 下一页
Oracle Locator 一览表第 1 页 2

页首 |版权和公司信息
寄送此页面
Printer View 打印机视图