Oracle Spatial在实际的应用中不但具有传统的GIS所有相关特性,而且Oracle Spatial还具有关系数据库的相关特性,就是这些特性扩展了在应用程序中使开发人员的工作范围并提供了他们的生产率,因而能支持更广泛的应用程序并提高性能,以下就是其特点的主要表现在:
1) 几何结构和空间参照
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) 资源。对于某些空间数据库以及索引类型和数据来说,并行索引创建能充分提高索引构建性能并显著节约时间。