1
数据库原理与应用技术
1.2.6.2 1.6.2 面向应用领域的数据库新技术
1.6.2 面向应用领域的数据库新技术

随着数据库领域的不断扩展,传统的数据库技术与系统显得力不从心。数据库技术面临多方面的挑战,有来自环境的、数据类型的、数据来源的、数据管理要求变化的。针对这些变化,许多数据库技术研究与开发人员分别在数据模型、数据库与其他相关技术的结合及数据库技术的应用领域等方面对数据库新技术展开了一系列研究工作。

数据库技术被应用到特定的领域中,出现了工程数据库、地理数据库、统计数据库、科学数据库和空间数据库等多种数据库,使数据库领域中新的技术内容层出不穷。

1. 数据仓库

传统的数据库技术以单一的数据资源为中心,进行各种操作型处理。操作型处理也称为事务处理,是指对数据库联机的日常操作,通常是对一个或一组记录的查询和修改,主要是为企业的特定应用服务的,人们关心的是响应时间、数据的安全性和完整性。分析型处理则用于管理人员的决策分析,例如,决策支持系统经常要访问大量的历史数据。于是,数据库由旧的操作型环境发展为一种新环境——体系化环境。体系化环境由操作型环境和分析型环境(数据仓库级、部门级、个人级)构成。

数据仓库是体系化环境的核心,它是建立决策支持系统(DSS)的基础。

1)从数据库到数据仓库

具体来说,有如下原因使事务处理环境不适宜决策支持系统应用。

(1) 事务处理和分析处理的性能特性不同。

在事务处理环境中,用户的行为特点是数据的存取操作频率高而每次操作处理的时间短,因此,系统可以允许多个用户按分时方式使用系统资源,同时保持较短的响应时间,联机事务处理是这种环境下的典型应用。

在分析处理环境中,某个决策支持系统应用程序可能需要连续运行几个小时,从而消耗大量的系统资源。

将具有如此不同处理性能的两种应用放在同一个环境中运行显然是不适当的。

(2) 数据集成问题。

决策支持系统需要集成的数据。全面而正确的数据是有效分析和决策的首要前提,相关数据收集得越完整,得到的结果就越可靠。因此,决策支持系统不仅需要整个企业内部各部门的相关数据,而且需要企业外部、竞争对手等的相关数据。

而事务处理的目的在于使业务处理自动化,一般只需与本部门业务有关的当前数据,对整个企业范围内的集成应用考虑很少。

当前绝大部分企业内数据的真正状况是分散而非集成的,这些数据不能成为一个统一的整体。对于需要集成数据的决策支持系统应用来说,必须自己在应用程序中对这些纷杂的数据进行集成。可是,数据集成是一项十分繁杂的工作,都交给应用程序完成会大大增加程序员的负担,并且,如果每做一次分析都要进行一次这样的集成,将会导致极低的处理效率。决策支持系统对数据集成的迫切需要可能是数据仓库技术出现的最重要原因。

(3) 数据动态集成问题。

由于每次分析都进行数据集成的开销太大,一些应用仅在开始对所需的数据进行了集成,以后就一直以这部分集成的数据作为分析的基础,不再与数据源发生联系,我们把这种方式的集成称为静态集成。静态集成的最大缺点在于:如果在数据集成后数据源中的数据发生了变化,这些变化又不能反映给决策者,则决策者使用的就会是过时的数据。对于决策者来说,虽然并不要求随时准确地探知系统内的任何数据变化,但也不希望他所分析的是几个月以前的数据。因此,集成数据必须以一定的周期(如24小时)进行刷新,我们把其称为动态集成。显然,事务处理系统不具备动态集成的能力。

(4) 历史数据问题。

事务处理一般只需当前数据,在数据库中一般也只存储短期数据。但对决策分析者而言,历史数据是相当重要的,许多分析方法必须以大量的历史数据为依托。没有对历史数据进行详细分析,是难以把握企业发展趋势的。

(5) 数据的综合问题。

在事务处理系统中积累了大量的细节数据。一般而言,决策支持系统并不对这些细节数据进行分析,在分析前,往往要对细节数据进行不同程度的综合。而事务处理系统不具备这种综合能力,根据规范化理论,这种综合往往会因为一种数据冗余而加以限制。

2)数据仓库的特点

原始数据(操作型数据)与导出型数据(决策支持系统数据)之间的区别如表1-1所示。

表1-1 原始数据与导出型数据的区别

W. H. Inmon给数据仓库作了如下定义:数据仓库是面向主题的、集成的、稳定的、不同时间的数据集合,用于支持经营管理中的决策制定过程。面向主题、集成、稳定和随时间变化是数据仓库的四个最主要特征。

(1) 数据仓库是面向主题的。

这是与传统数据库面向应用相对应的。主题是一个在较高层次将数据归类的标准,每个主题基本对应一个宏观的分析领域。例如,一个保险公司的数据仓库所组织的主题可能为客户政策保险金索赔。而按应用来组织则可能是:汽车保险、生命保险、健康保险和伤亡保险。可以看出,基于主题组织的数据被划分为各自独立的领域,每个领域有自己的逻辑内涵而不相互交叉。而基于应用的数据组织则完全不同,它的数据只是为处理具体应用而组织在一起的。

(2) 数据仓库是集成的。

操作型数据与适合决策支持系统分析的数据之间差别甚大,因此数据在进入数据仓库之前,必然要经过加工与集成。这一步实际上是数据仓库建设中最关键、最复杂的一步。

(3) 数据仓库是稳定的。

数据仓库反映的是历史数据的内容,而不是处理联机数据,因此,数据经集成进入数据库后是极少或根本不更新的。

(4) 数据仓库是随时间变化而变化的。

首先,数据仓库内的数据时限要远远长于操作环境中的数据时限。前者一般为 5~10年,而后者只有60~90天。数据仓库保存数据时限较长是为了适应决策支持系统进行趋势分析的要求。其次,操作环境包含当前数据,即在存取一刹那是正确有效的数据,而数据仓库中的数据都是历史数据。最后,数据仓库中数据的码键都包含时间项,表明该数据的历史时期。

3)分析工具——数据仓库系统的重要组成部分

(1) 联机分析处理技术及工具。

目前联机分析处理(OLAP)工具可分为两大类:一类是基于多维数据库的,一类是基于关系数据库的。二者相同之处是基本数据源仍是数据库和数据仓库,是基于关系数据模型的,向用户呈现的也都是多维数据视图。其不同之处是前者把分析所需的数据从数据仓库中抽取出来组织成多维数据库,后者则利用关系表来模拟多维数据,并不生成多维数据库。

(2) 数据挖掘技术和工具。

数据挖掘(Data Mining,DM)是从大型数据库或数据仓库中发现并提取隐藏在内的信息的一种新技术。数据挖掘技术涉及数据库技术、人工智能技术、机器学习、统计分析等多种技术,它使决策支持系统跨入了一个新阶段。传统的决策支持系统通常在某个假设的前提下通过数据查询和分析来验证或否定这个假设;而数据挖掘技术则能够自动分析数据,进行归纳性推理,从中发掘出潜在的模式,或产生联想,建立新的业务模型帮助决策者调整市场策略,找到正确的决策。

4)基于数据库技术的决策支持系统解决方案

数据仓库、OLAP和数据挖掘是作为三种独立的信息处理技术出现的。数据仓库用于数据的存储和组织,OLAP集中于数据的分析,数据挖掘则致力于知识的自动发现。它们都可以分别应用到信息系统的设计和实现中,以提高相应部分的处理能力。但是,由于这三种技术内在的联系性和互补性,将它们结合起来即是一种新的决策支持系统构架。这一构架以数据库中的大量数据为基础,系统由数据驱动。其特点如下。

(1) 在底层数据库中保存了大量的事务级细节数据。这些数据是整个决策支持系统的数据来源。

(2) 数据仓库对底层数据库中的事务级数据进行集成、转换和综合,重新组织成面向全局的数据视图,为决策支持系统提供数据存储和组织的基础。

(3) OLAP从数据仓库中的集成数据出发,构建面向分析的多维数据模型,再使用多维分析方法从多个不同的视角对多维数据进行分析、比较,分析活动从以前的方法驱动转向了数据驱动,分析方法和数据结构实现了分离。

(4) 数据挖掘以数据仓库和多维数据库中的大量数据为基础,自动地发现数据中的潜在模式,并以这些模式为基础自动地做出预测。数据挖掘表明知识隐藏在日常积累下来的大量数据之中,仅靠复杂的算法和推理并不能发现知识,数据才是知识的真正源泉。

2. 工程数据库

工程数据库(Engineering DataBase)是一种能存储和管理各种工程图形,并能为工程设计提供各种服务的数据库。它适用于CAD/CAM、计算机集成制造(CIM)等通称为CAX的工程应用领域。工程数据库针对工程应用领域的需求,对工程对象进行处理,并提供相应的管理功能及良好的设计环境。

工程数据库管理系统是用于支持工程数据库的数据库管理系统,主要有以下功能。

(1) 支持复杂多样的工程数据的存储和集成管理。

(2) 支持复杂对象(如图形数据)的表示和处理。

(3) 支持变长结构数据实体的处理。

(4) 支持多种工程应用程序。

(5) 支持模式的动态修改和扩展。

(6) 支持设计过程中多个不同数据库版本的存储和管理。

(7) 支持工程长事务和嵌套事务的处理和恢复。

在工程数据库的设计过程中,由于传统的数据模型难以满足CAX应用对数据模型的要求,因此需要运用当前数据库研究中的一些新的模型技术,如扩展的关系模型、语义模型、面向对象的数据模型。

3. 统计数据库

统计数据是人类对现实社会各行各业、国情国力的大量调查数据。采用数据库技术实现对统计数据的管理,对充分发挥统计信息的作用具有决定性意义。

统计数据库(Statistical Database)是一种用于对统计数据进行存储、统计(如求数据的平均值、最大值、最小值、总和等)、分析的数据库。

(1) 多维性是统计数据的第一个特点,也是最基本的特点。

(2) 统计数据是在一定时期(年度、月度、季度)内产生的大量数据,再经过各种条件下的查询及一定的加工处理,通常又要输出一系列结果报表。这就是统计数据的“大进大出”特点。

(3) 统计数据的时间属性是最基本的属性,任何统计量都离不开时间因素,而且需要经常研究时间序列值,所以统计数据又有时间向量性。

(4) 随着用户对所关心问题的角度不同,统计数据查询出来后常有转置的要求。

4. 空间数据库

空间数据库(Spacial Database)是以描述空间位置及点、线、面、体特征的拓扑结构的位置数据,以及描述这些特征性能的属性数据为对象的数据库。其中,位置数据为空间数据,属性数据为非空间数据。空间数据是用于表示空间物体的位置、形状、大小和分布特征等信息的,用于描述所有二维、三维和多维分布的关于区域的信息,它不仅具有表示物体本身空间位置及状态的信息,还具有表示物体空间关系的信息。非空间信息主要包含表示专题属性和质量描述数据,用于表示物体的本质特征,以区别地理实体,对地理物体进行语义定义。

由于传统数据库在空间数据的表示、存储和管理上存在许多问题,从而形成了空间数据库这一多学科交叉的数据库研究领域。目前空间数据库大多数以地理信息系统的形式出现,主要应用于环境和资源管理、土地利用、城市规划、森林保护、人口调查、交通、税收、商业网络等领域的管理与决策。

空间数据库的功能是利用数据库技术实现空间数据的有效存储、管理和检索,为各种空间数据库用户利用。目前,空间数据库的研究主要集中于对空间关系与数据结构的形式化定义、空间数据的表示与组织、空间数据查询语言、空间数据库管理系统等的研究。