分类: Oracle
2008-04-11 21:05:37
来源:Oracle 作者:Rich Gibson |
接下来,让我们看看空间数据的三种主要形式:点、线和多边形。
点很简单:一条纬线和一条经线就可以标记一个点。线和多边形就是一系列相连的点。线用于线状地物,例如道路与河流,而多边形是由若干条线组成,其中的线首尾相连,最终定义一个区域。送货卡车使用的路线可能是条线,而销售区域可能就是上述的多边形。
现在,我将详细说明如何使用免费的 Oracle 数据库 XE 数据库来尝试存储、管理和分析空间数据。
关于简单性
存储经度和纬度的最简单方法是在数域中进行存储。使用数域存储坐标可以很好地通过点处理简单事物。需要扩充时可使用 Locator(定位器),这是完整 Oracle Spatial 工具(随附在 Oracle 商业产品中)的 XE 子集。通过 Locator,您可以从使用简单的经/纬度转向使用“几何结构”。sdo_geometry 数据类型可以存储点、线、多边形以及更为复杂的几何图形,例如多点、多线和多个多边形。您还可以使用操作符,用于计算几何图形之间距离、查找最近的相邻物体,以及确定两个几何图形是否交叉(“州际公路 70 是否进入科罗拉多州?”)。
如果您的操作不仅仅是将点置于地图上,那么 Locator 十分适用,但对于简单问题,可以使用简单工具。
Oracle 数据库 XE(可以从 Oracle 技术网下载)具有 Windows 和 Linux 两种版本。对于 Linux 安装,请下载 RPM,然后进行安装:
rpm –ivh oracle-xe-10.2.0.1-1.0.i386.rpm
我在安装中遇到了两个小问题。首先,我没有足够的交换空间。我遵循 Red Hat 说明设置并激活了更多的交换空间,而不是在硬盘上创建一个较大的交换分区。简言之,您需要创建一个用于交换的文件,并将其指定为交换文件,然后将其打开。这组命令如下:
您将通过 Web 界面配置和使用(大多数时候)Oracle 数据库 XE。如果在本地计算机上安装了 XE,则将浏览器指向 。如果是在远程服务器上进行的安装,您可能会遇到一个小问题,因为默认情况下 Web 浏览器只为本地客户端提供服务。
您可以使用 Web 界面的 Administration(管理)部分启用对远程客户端的访问。(或者,可以编辑位于 /etc/init.d/oracle-xe 的 XE 配置文件。)但是,这种方法存在两个问题。一个是,它公开数据库管理的方式会引发更多安全问题。另一个更为重要的问题是,为了支持对 Web 界面的远程访问,您需要拥有本地 Web 访问权限。这对于远程无头服务器而言是个挑战。
一种解决方法是使用 Linux 和 Macintosh OSX 随附的 Open SSH 程序。Open SSH 包含一个内置的 Socks 4 代理。您可以使用以下命令连接远程服务器:
ssh -D1080 username@yourserver.com
之后,看起来您像是设置了一个到服务器的普通 ssh 连接,但幕后的 SSH 将监听端口 1080,并将所有请求传送至远程服务器。这还意味着,现在所有的 HTTP 通信都将进行加密直至到达您的服务器。在无法保证安全的公共网络上工作时,这是一个非常有用的特性 |