|
空间地理技术与数据库管理系统(2) CS/011013_03_02.jpg"> ---- 通过在对象相关的数据库管理系统中加入空间数据类型,使应用能够存储和管理复杂的地理数据。这样做并不会改变现有的数据库或影响当前应用,而只是将一个"形状"列加入到现有的表中,提供软件以管理和访问列中所引用的地理特性。利用空间表,用户可以像以前一样执行数据查询和表格累加,还可以编写查询以返回空间特性或在请求中使用空间特性。空间对象和空间索引表的创建与维护对用户来说都是自动化和透明的。 ---- R-树状索引 ---- 快速访问及有效处理数据的关键是索引。虽然有了可扩展的数据类型,但对于本质非常复杂的空间地理数据而言,有效的空间索引更为重要。 ---- 传统的空间数据索引方式主要有以下两种。第一种方法是在服务器之外建立一个空间索引并将其存储于BLOB(Binary Large Object,大型二进制对象)中。随后在需要时,用户可以通过中间件访问索引和检索BLOB。然而,无论索引结构性能如何优良,由于要包含来自外部服务器的检索部分,因此检索和维护BLOB将导致本质性的I/O开销和并发问题,从而降低了速度和效率。第二种方法就是空间分割,即将空间按照规定的网格或其他分层结构(例如四维树)分割成单元。每个单元分配一个号码,然后每一个空间对象与它重叠单元的号码联系起来。但是空间并非线性序列,许多空间特性的不规则性要求复杂的检索以及对众多可能错误的必要检查。由此可见,这也是一个速度缓慢且效率低下的方法。 ---- 相比之下,R-树(Region Tree,区域树状图)则是一种高性能、多维数的访问方法,该方法内置于数据库内核并直接与外延数据类型协作以适当地管理空间地理数据。与标准索引不同的是,R-树并非将整个空间分割成由非重叠相邻单元组成的完整覆盖。相反,它使用的是数据分割的方法,使每一个对象自动地被完全由空间形状所决定的"带边盒子"表示,这些"带边盒子"可以相互重叠,并且不需要覆盖整个空间(如图2所示),开发人员也不必花费时间预先了解数据的空间范围。
---- 数据刀片(DataBlade) ---- Internet就是一种数据的传播。那么,我们应该如何将公司扩展到Internet上,同时又不必增加太多的成本?如何将业务数据转变成网页内容?如何利用已有的数据使公司更具竞争力呢?针对上述问题,早在1996年,Informix公司就提出了数据刀片(DataBlade)技术,该技术能够从任何来源集成任何数据,提供了稳定灵活的Internet应用程序环境。 ---- 例如,某个客户需要查询其目前的SQL数据库,以搜索在公司某一分销点200米以内的所有住所,如果仅仅利用标准SQL,这个看似简单的查询实际上是非常复杂的。而利用Informix DataBlade技术,客户就能够通过增加前面提到的地理及地区性资料扩展应用程序的智能性。结果会是怎样呢?编码行数减少了,执行速度加快了,客户得到了所需的准确而非近似的答案。 ---- 作为对服务器性能的一种延伸,DataBlade模块被集成在引擎的核心部分,将传统的数据类型与丰富的网页内容集成在一起,但没有牺牲传统的关系型数据库管理系统的可靠性和可伸缩性。利用一个单独的DataBlade模块或将几个模块集成在一起就可以创建能够满足客户独特需要的独特信息管理解决方案。DataBlade模块采用通用的编程语言书写,它们可以做一般程序语言的工作,不需要服务器或其他数据源的调用。而且采用DataBlade技术开发的可重用模块可以直接嵌入到数据库核心,作为数据库服务器的一部分,这样可以大大扩展核心数据库服务器的数据支持能力,并提高数据库服务器的整体运行性能。
|