1、第 10 章 多媒体数据库技术,数据管理技术的发展可以大体归为三个阶段:人工管理文件系统数据库管理系统。,人工管理 这一阶段(20世纪50年代中期以前),计算机主要用于科学计算。外部存储器只有磁带、卡片和纸带等还没有磁盘等直接存取存储设备。软件只有汇编语言,尚无数据管理方面的软件。数据处理方式基本是批处理。这个阶段有如下几个特点: 1.计算机系统不提供对用户数据的管理功能。用户编制程序时,必须全面考虑好相关的数据,包括数据的定义、存储结构以及存取方法等。程序和数据是一个不可分割的整体。数据脱离了程序就无任何存在的价值,数据无独立性。 2.数据不能共享。不同的程序均有各自的数据,这些数据对不同的
2、程序通常是不相同的,不可共享;即使不同的程序使用了相同的一组数据,这些数据也不能共享,程序中仍然需要各自加人这组数据,谁也不能省略。基于这种数据的不可共享性,必然导致程序与程序之间存在大量的重复数据,浪费了存储空间。 3.不单独保存数据。基于数据与程序是一个整体,数据只为本程序所使用,数据只有与相应的程序一起保存才有价值,否则就毫无用处。所以,所有程序的数据均不单独保存。,文件系统 在这一阶段(20世纪50年代后期至60年代中期)计算机不仅用于科学计算,还利用在信息管理方面。此时,外部存储器已有磁盘、磁鼓等直接存取的存储设备。软件领域出现了操作系统和高级软件。操作系统中的文件系统是专门管理外存
3、的数据管理软件,文件是操作系统管理的重要资源之一。数据处理方式有批处理,也有联机实时处理。这个阶段有如下几个特点: 1.数据以“文件”形式可长期保存在外部存储器的磁盘上。 2.数据的逻辑结构与物理结构有了区别,但比较简单。程序与数据之间具有“设备独立性”,即程序只需用文件名就可与数据打交道,不必关心数据的物理位置。由操作系统的文件系统提供存取方法(读写)。 3.文件组织已多样化。有索引文件、链接文件和直接存取文件等。但文件之间相互独立、缺乏联系。数据之间的联系要通过程序去构造。 4.数据不再属于某个特定的程序,可以重复使用,即数据面向应用。但是文件结构的设计仍然是基于特定的用途,程序基于特定的
4、物理结构和存取方法,因此程序与数据结构之间的依赖关系并未根本改变。 5.对数据的操作以记录为单位。这是由于文件中只存储数据,不存储文件记录的结构描述信息。文件的建立、存取、查询、插人、删除、修改等所有操作,都要用程序来实现。,随着数据管理规模的扩大,数据量急剧增加,文件系统显露出一些缺陷: a.数据冗余。由于文件之间缺乏联系,造成每个应用程序都有对应的文件,有可能同样的数据在多个文件中重复存储。 b.不一致性。这往往是由数据冗余造成的,在进行更新操作时,稍不谨慎,就可能使同样的数据在不同的文件中不一样。 数据联系弱。这是由于文件之间相互独立,缺乏联系造成的。 c.文件系统阶段是数据管理技术发展
5、中的一个重要阶段。在这一阶段中,得到充分发展的数据结构和算法丰富了计算机科学,为数据管理技术的进一步发展打下了基础,现在仍是计算机软件科学的重要基础。,数据库管理系统 这一阶段(60年代后期),数据管理技术进入数据库系统阶段。数据库系统克服了文件系统的缺陷,提供了对数据更高级、更有效的管理。这个阶段的程序和数据的联系通过数据库管理系统来实现(DBMS),近年来,随着多媒体数据库的引入,对数据的管理方法又开始酝酿新的变革。我们知道,传统数据库的模型主要针对整数、实数、定长字符等规范数据。数据库的设计者必须把真实的世界抽象为规范数据,这要求设计者具有一定的技巧,而且在一定情况下,这项工作会特别的困
6、难。即使抽象完成了,抽象得到的结果往往会损失部分的原始信息,甚至会出现错误。当图像、声音、动态视频等多媒体信息引入计算机之后,可以表达的信息范围大大扩展,但又带来许多新的问题。在这种情况下,如何使用数据库系统来描述这些数据呢?另一方面,传统数据库可以在用户给出查询条件之后迅速地检索到正确的信息,但那是针对使用字符数值型数据的。现在,我们面临着这样的问题:如果基本数据不再是字符数值型,而是图像、声音,甚至是视频数据,那我们将怎样检索?如何表达多媒体信息的内容?我们应该如何组织这些数据呢?查询应该如何进行?这些都是我们不得不考虑的。,多媒体数据库是数据库技术与多媒体技术结合的产物。多媒体数据库不是
7、对现有的数据进行界面上的包装,而是从多媒体数据与信息本身的特性出发,考虑将其引入到数据库中之后而带来的有关问题。多媒体数据库从本质上来说,要解决三个难题。第一是信息媒体的多样化,不仅仅是数值数据和字符数据,要扩大到多媒体数据的存储、组织、使用和管理。第二要解决多媒体数据集成或表现集成,实现多媒体数据之间的交叉调用和融合,集成粒度越细,多媒体一体化表现才越强,应用的价值也才越大。第三是多媒体数据与人之间的交互性。没有交互性就没有多媒体,要改变传统数据库查询的被动性,能以多媒体方式主动表现。,10.1.1 多媒体数据库的数据,数据是表征事物特性的,它们可以取自于现实世界,也可以通过模拟构造产生。因
8、此,数据可以有原始型、描述型或指示型三种数据形式存在于计算机中。,10.1多媒体数据库概述,1、原始的数据,原始的数据是根据实物采集而得到的,例如,声音或图像的采集。当对采样数据进行A/D转换后,可以得到一系列相关的二进制信号,这些二进制信号就代表着原始的,不带有任何特殊附加符号的文件格式。,2、描述性数据,描述性数据通常是带有说明特征的,可以是关键词、语句、段落,或者是语音或声音。并且数据可以采用结构化或非结构化形式。,3、指示性数据,指示性数据通常以多媒体元素的参数为内容,即为多媒体元素的特征赋予特定的语义。例如表示图像大小的高和宽、表示线条的粗或细、表示声音的强或弱等。,2、描述性数据,
9、3、指示性数据,多媒体数据库是一种数据容器,是因某种应用的需要而建立的,目的是组织有特定联系的数据,以便对这些数据进行管理、运用和共享。多媒体数据库所组织的数据可以包括数值、字符串、文本、图形、图像、声音、和视像等。,1、数值,在数据库中,数值可以用来表征事物的大小或高低等简单属性,例如,人事档案库中的年龄、工资、身材等。也可以表示事物的类别、层次等,如性别、部门、学历等。对数值数据可以进行算术运算,可以提供有关事物的统计特征。,2、字符串,字符串即由数字、字母或其它符号连接组成的符号串,其形式近乎于事物本身的特征,并常通过各个角度对事物进行描述,例如,电话号码、地址、时间等。对字符串数据可以
10、进行连接运算,在数据库管理中是较便于检索的一种类型。,3、文本,大量的字符串组成文本数据。文本主要以自然语言对事物进行说明性的表示,例如,简历、备注等。其内容抽象度高,计算机理解需要基于一定的技术。在管理上也增加了难度,例如,存储问题、语义归类问题、检索问题等。,4、图形,图形数据以点、线、角、圆、弧为基本单位,一个完整复杂的图形也可以分解为这些基本的元素来存储。此外,还必须保存各图形元素之间的位置与层次关系。例如,图形元素库、工程图纸库等。图形数据是基于符号的,因此存储量小,便于存取和管理,但图形的使用以显示为主,必须结合图形显示技术。,5、图像,图像数据以空间离散的点为基础,如果对这种原始
11、数据进行存取的话,将不利于将来对数据的检索,所以通常都通过一定的格式加以组合。数据库中常用尺寸、颜色、纹理、分割等对抽象的语义来描述图像的属性。在特定范围内,图像数据库在存取和检索方面也已经有成功的应用,例如,指纹库、人像库、形体库等。,6、音频,由于音频分为声音、语音和音乐。其中声音数据的范围太大太杂,不便于存储和管理。语音数据的存取也是建立在波形文件基础上的,鉴于语言、语音以及语气的诸多因素,波形的检索还存在着较大的难度,只有对各声波段附加数值、字符串或文本数据,并以它们作为检索的依据,才能达到非声波本身属性方面的的检索。在目前的实际应用中,只有对特定声音或特定语音的存取才具有实际意义。而
12、音乐是表示乐器的模拟声音,它以符号方式记录信号,因此容易存取、检索和管理。它类似于图形,一段完整复杂的音乐可以分解音符、音色、音调等元素来存储。此外,还必须保存时间及其它相关属性。,7、动画和影像,动画和影像类似与图像,区别与图像的是它的表现必须时间属性的变化密切配合。动画和影像数据可以分解成文字、解说、配音、场景、剪辑以及时间关系等多种元素,在空间和时间上的管理比其它数据要复杂得多,无论是对各元素的检索还是对组合元素的检索,都存在着相当的难度。但若作为一个整体,可以如声波那样附加以特定的数数据,实现非动画和影像本身属性方面的检索。,10.1.2 多媒体数据库的体系结构,多媒体数据库的组织结构
13、,多媒体数据库的组织结构尚未建立统一的体系结构,大致有以下几种组织结构。,组合型结构集中统一型结构客户/服务型结构(网络服务器)超媒体型结构,组合型结构,这种结构是通过整合技术连接的。组合型结构中可以拥有多个独立的媒体数据库,如文本数据库、音频数据库和图像数据库,每一种媒体数据库的设计不需要考虑和其它数据库的匹配,并且都有自己独立的数据库管理系统,如图10-1所示。,实际应用时,用户可以对其中任何一个媒体数据库单独进行访问和管理。对于多数据库的访问是分别进行的,可以通过相互通信来进行协调和执行相应的操作。这种多数据库的联合访问需要开发用户应用程序去实现。为了提高使用效率,目前多数据库的整合技术
14、已有所发展,对于传统型数据库的整合技术已经达到的由于阶段,而对于复杂的多媒体多数据库的整合技术还需要一个研究过程。,集中统一型结构,该结构如图10-2所示,其中包含一个多媒体数据库和一个多媒体数据库管理系统。各种媒体被统一地建于数据库中,由一个数据库管理系统统一管理和提供访问。目的是要满足用户对多特征事物的数据存储和管理,以便达到统一综合应用的效果。但关键的技术基础是需要建立合适且便于存储、检索和管理的数据类型。目前,面向对象的数据类型就是建立复杂多媒体数据类型的一种方法。更有效的多媒体数据类型的模式有待于进一步的研究。,客户/服务型结构(网络服务器),如图10-3所示,客户/服务型结构有多媒
15、体数据库、各媒体服务器、多媒体管理服务器、用户接口程序和用户应用程序组成。,其中各种媒体数据库相对独立,并通过专用服务器和一个多媒体管理服务器相连。多媒体管理服务器综合各专用服务器的操纵,通过特定的中间件系统连接用户的接口程序,最终达到与客户之间的信息交换。这种结构比较适用于网络环境中,用户可以单独选择或组合选择多媒体服务器的服务。但作为开放互联网中的一种有效的应用,必须基于一定的标准,包括多媒体数据类型的模型、数据库模型、标准用户接口等。,超媒体型结构,如图10-4所示,各种媒体数据库分散存储于与网络有连接的存储空间,互联网提供了一个信号传递的通道。该体系结构强调对数据时空索引的组织,通过建
16、立适当的访问工具,就可以随意访问和使用这些数据。,多媒体数据库的层次结构,(1)传统数据库的层次,物理模式的主要职能是定义数据的存储组织方法(数据库文件的格式、索引文件组织方法、数据库在网络上的分布方法)概念模式定义抽象现实世界的方法外部模式又称子模式,是概念模式中对用户有用的一部分概念模式借助数据模型来描述,数据库系统的性能与数据库数据模型直接相关,如果引入多媒体数据,这种系统划分肯定不能满足要求,就必须寻找恰当的结构分层形式。已有多种层次划分,包括对传统数据库的扩展、对面向对象数据库的扩展、超媒体层次扩展等。虽然各有所不同,但大都是从最低层增加对多媒体数据的控制与支持,在最高层支持多媒体的
17、综合表现和用户的查询描述,在中间增加对多媒体数据的关联和超链的处理。在这里我们综合各种多媒体数据的层次结构的合理成分,我们提出一种多媒体数据库层次结构的划分:,(2)多媒体数据库的层次划分,媒体支持层,存取与存储数据模型层,概念数据模型层,多媒体用户接口层,媒体支持层,建立在多媒体操作系统之上,针对各种媒体的特殊性质,在该层中要对媒体进行相应的分割、识别、变换等操作,并确定物理存储的位置和方法,以实现对各种媒体的最基本数据的管理和操纵。由于媒体性质差别大,对于媒体的支持一般都分别对待,在操作系统的辅助下,对不同媒体实施不同的处理,完成数据库的基本操作。,存取与存储数据模型层,多媒体数据的逻辑存
18、储与存取,各种媒体数据的逻辑位置安排、相互的内容关联、特征与数据的关系以及超链的建立等都需要通过合适的存取与存储数据模型进行描述。,概念数据模型层,对现实世界用多媒体数据信息进行的描述,也是多媒体数据库中在全局概念下的一个整体视图。通过概念数据模型为上层的用户接口、下层的多媒体数据存储和存取建立起一个在逻辑上统一的通道。存取与存储数据模型层和概念数据模型层也可以通称为数据模型层。,多媒体用户接口层,完成用户对多媒体信息的查询描述和得到多媒体信息的查询结果。这层在传统数据库中是非常简单的,但在多媒体数据库中这一层成了最重要的环节之一。用户首先要能够把它的思想通过恰当的方法描述出来,并能使多媒体系
19、统所接受。次之,查询和检索到的结果需要按用户的需求进行多媒体化的表现,甚至构造出“叙事”效果。,10.2 多媒体数据模型,10.2.1 多媒体数据模型的发展,数据模型是数据特征的抽象,描述的是数据的共性,计算机不可能直接处理现实世界中的具体事物。需要把具体事物转换成计算机能处理的数据,在数据库中用数据模型来抽象、表示和处理现实世界的数据和信息。数据模型应满足以下3方面需求:(1)能比较真实地模拟现实世界(2)容易被人理解(3)便于在计算机上实现,在数据库管理系统中,数据模型用于提供信息数据表示和操作手段的形式构架,由数据对象类型的集合、数据操作的集合和通用完整性规则的集合3种基本要素组成,数据
20、对象类型的集合描述数据库的构造,是对数据库系统静态特性的表述。这些对象是数据库的组成成分。对象一般可分为两类:(1)是与数据类型、内容、性质有关的对象;(2)是与数据之间关联有关的对象,数据操作的集合给出了对数据库的运算体系,如关系数据库中的对关系的查询、修改、定义视图和权限等,是对数据库系统动态特性的描述。数据库主要有2大类操作:检索和更新,通用完整性规则的集合给出一般性的语义约束,是指给定的数据模型中数据及它们之间关联所具有的制约和依存规则,用于限定符合数据模型的数据库状态及状态变化,以保证数据库数据的正确、有效、相容和统一。,根据数据模型的发展,可以划分为三个阶段:第一代的网状、层次数据
21、库系统;第二代的关系数据库系统;第三代的以面向对象模型为主要特征的数据库系统。,根据数据模型的发展,可以有五种方式:层次、网状数据模型、关系数据模型、面向对象的数据模型、分布式数据模型和多维数据模型。1、层次数据早期DBMS采用层次模型,它利用树型结构来表示实体及实体之间联系。模型中节点为记录型,表示某种类型的实体;节点之间的连线表示它们之间的关系。 层次模型构造简单,易于实现。典型的应用如公司、大学的行政架构表示。 基于层次模型的数据库称为层次数据库,它支持用户以浏览方式完成对数据访问,对子节点记录的访问需经过父节点。 层次模型的限制是:任何非根节点的节点有且仅有一个父节点; 父子节点只能是
22、1:n关系, 不能表示两类实体间的m:n关系。,利用网状结构来表示实体与实体之间联系的数据模型称为网状模型, 其节点为记录型, 用于表示某类实体。 允许节点有多个父节点, 比层次模型更通用。基于网状模型的网状数据库管理系统也主要支持用户以浏览的方式完成对数据记录的访问,但由于节点可有多个父节点, 对网状数据库中某节点的访问路径可以有多条。层次和网状数据库管理系统均不支持数据独立性。数据库结构的调整将使应用随之变化,这就限制了数据库系统及其应用的可扩展性、可重用性及可移植性。,2、关系数据模型。关系模型克服了上述两种模型的缺陷, 利用二维的表来表示实体及实体之间的关系, 每张二维表又称为一个关系
23、。 其特点是:实体和实体之间的联系用关系来表示、以关系数学为基础、数据的物理存储和存取路径对用户不透明、非过程化的应用。 3、面向对象的数据模型。其主要特征是:支持数据管理、对象管理和知识管理,保持和继承了关系数据库系统的技术,对其它系统开放,支持数据库语言标准,支持标准网络协议,有良好的可移植性、可连接性、可扩展性和互操作性等。,4、分布式数据模型。允许用户开发的应用程序把多个物理分开的、通过网络互联的数据库当作一个完整的数据库看待。并行数据库通过cluster 技术把一个大的事务分散到cluster中的多个节点去执行,提高了数据库的吞吐和容错性。多媒体数据库提供了一系列用来存储图像、音频和
24、视频对象类型,更好地对多媒体数据进行存储、管理、查询。模糊数据库是存储、组织、管理和操纵模糊数据库的数据库,可以用于模糊知识处理。5、多维数据模型。复杂事物往往存在多维特征,即突破了三维的数据关系。事实上,多维分析是分析企业数据最有效的方法,多维数据模型可以通过超立方体、多立方体等方法建立。,10.2.2 扩充的关系数据模型,扩充的原因: 传统的关系模型结构简单,是单一的二维表, 数据类型和长度也被局限在一个较小的子集中,又不支持新的数据类型和数据结构, 很难实现空间数据和时态数据,缺乏演绎和推理操作, 因此表达数据特性的能力受到限制。在MDBMS中使用关系模型, 必须对现有的关系模型进行扩充
25、,使它不但能支持格式化数据,也能处理非格式化数据。,1、引入抽象数据类型(ADT),通过增加描述声音、图形或图像等特征的抽象数据类型,来增加RDBMS对多媒体数据的管理能力。这种扩展方法的优点是以极小的代价保留了关系型数据库的内核和管理方式,拓宽的对多种媒体的管理能力。但由于基于二维构造的多媒体数据模型无法反映各媒体之间的空间、时间和语义关系,有关的处理必须用其它应用程序来实现,所以在多媒体数据的同步和集成方面存在很多问题,且对多媒体数据的基于内容的检索和查询更加难以实现。,2、引入嵌套表,这种拓展方法是在记录和表之间建立层次关系。在1NF关系模型中,必须遵守的原则是要求每一个属性均为原子数据
26、类型,因此同一个属性可能不得不存在于若干个关系中。为了改变这种冗余的关系模式,NF2模型(Non First Normal Form),即非第一范式中引入了嵌套表的概念,不再遵守“表中不能再有表”的规定。这样就能使层次结构在关系数据库中得到应用,如表10-1,同时在关系数据库中引入抽象数据类型,使得用户能够定义和表示多媒体信息对象。从而来提高关系数据库处理多媒体数据的能力。,表10-1 NF2关系模型中嵌套,许多关系型数据库都利用标准的数据区域进行扩展,如FoxPro的General字段, Windows的标准动态注释、格式注释、图形等,去增加多媒体数据的表示。虽然NF2方法可以利用关系数据库
27、传统优势(数据类型的数据表示和操作),可以延用关系数据库语言或其他通用语言。但无法增强建模能力,不能较好地反映多媒体数据所特有的时空关系,同时多媒体对象的存取、检索或其它处理上仍存在相当大的困难。,FoxPro是Microsoft公司的产品,它是在DBase基础上发展起来的。为了处理多媒体数据,FoxPro2.5引入一个新的属性类型General,它可以容纳任何一种多媒体数据,包括文本、图形、图象或声音数据。在Windows中, FoxPro相当于一个OLE客户,通过在表中定义一个类型为General的字段,可以为链接或嵌入任何对象预留空间。,10.2.3 面向对象数据模型,由于多媒体数据具有
28、对象复杂、存储分散和时空同步等特点,传统的关系型数据模型以及采用扩展关系的方法都无法很好地体现这种多媒体所固有的特性。面向对象的方法的出现以及它在复杂数据方面的优势,渐渐引起了人们的重视。面向对象数据库建立在对象模型的基础上,以定义对象的属性、集合、行为、状态和联系等为主要描述方式。,面向对象系统中,通过引入类、对象、方法、消息、封装、继承等概念,可以有效地描述各种对象及其内部结构和联系,这种机制可以很好地满足多媒体数据库在建模方面的要求,并且能更好地实现数据库的存储、查询以及其他操作,目前来讲,虽然所能建立的多媒体对象模型,大多是能满足图形界面应用的对象,但是面向对象的方法为新一代的多媒体数
29、据模型打下了良好的基础。许多多媒体资料可以抽象为被类型链联接在一起的结点网络,可以自然地用面向对象方法所描述。,面向对象的基本概念,对象 是问题领域中的事物的表示或描述,世界上任何事物都是对象。对象具有名字标识,并具有自身的状态和功能。,对象包含三个重要的因素:,(1)属性:对象的性质,即用来描述和反映对象特征的参数。对象的属性可以是系统或用户定义的数据类型,也可以是一个抽象的数据类型(2)方法:对象的行为,定义在对象属性上的一组操作称为对象的方法。实际是将一些通用的过程编写好并封装起来,作为方法供用户直接调用。,(3)事件:响应对象的动作称为事件,它发生在用户与应用程序交互时。如单击控件、鼠
30、标移动、键盘按下等。在面向对象的系统中,对象之间的通信和请求对象完成某种处理工作是通过消息传送实现的。消息传送相当于一个间接的过程调用,也就是用户编写的程序。,类是对象的抽象,也是创建对象实例的模板。类是由用户定义的、关于对象的结构和行为的数据类型,包含了创建对象的属性描述和行为特征的定义。换句话说,将那些具有相同的构造,使用相同的方法,具有相同变量名和变量类型的对象集中在一起形成类。类中的每个对象称为类的实例。类中所有的对象共享一个公共的定义,而赋予变量的值是各不相同的。,继承是一种联结类的层次模型,并且允许和鼓励类的重用,对象的一个新类可以从现有的类中派生,这个过程称为类继承。继承有属性的
31、继承和功能的继承两种,派生类可以继承其基本类的所有属性和功能,并在其基础上具有更多的属性和功能。继承性体现了一般与特殊的关系,并能很好的解决了软件的可重用性问题。例如,Windows应用程序窗口和文档窗口可以看作从一个窗口类派生出来的,但是这两个窗口子类添加了不同的特性。,封装是将大部分实现细节隐藏起来的一种机制,是对象和类概念的主要特性。封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。也就是说,现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。封装保证了模块具有较好的独立性,使得程序维护修改较为容易。对应用程序的修改仅限于类的内部,可以最
32、大限度地减少因应用程序修改而带来的影响。,多态性包括参数化多态性和包含多态性。参数化多态性是指根据不同的参数类型自动调用对应程序段,例如同样是加法,数字相加和时间相加的实际计算方法是不同的。包含多态性允许不同类的对象对同一消息作出响应。例如同样是最大化操作,父窗口和子窗口的实现过程是不同的。多态性具有灵活、抽象、行为共享、代码共享的优势。,包含就是对象组合。复杂数据可能是多种简单数据的组合,所以一个对象中可以包含其它对象,这种对象称为复杂对象或复合对象。包含对象可以有多层,从而形成了对象间的包含层次。,面向对象数据库系统,面向对象数据库系统更适合于多媒体 (1)面向对象模型支持“聚合”与“概括
33、”的概念,从而更好地处理多媒体数据等复杂对象的结构语义。 (2)而向对象模型支持抽象数据类型和用户定义的方法,便于系统支持定义新的数据类型和操作。 (3)面向对象系统的数据抽象、功能抽象与消息传递的特点使对象在系统中是独立的, 具有良好的封闭性, 封闭了多媒体数据之间的类型及其它方面的巨大差异, 并且容易实现并行处理, 也便于系统模式的扩充和修改。(4)面向对象系统的对象类、类层次和继承性的特点,不仅减少了冗余和由此引起的一系列问题,还非常有利于版本控制。 (5)面向对象系统中实体是独立于值存在的,因而避免了关系数据库中讨论的各种异常。 (6)面向对象系统的查询语言通常是沿着系统提供的内部固有
34、联系进行的,避免了大量的查询优化工作。,面向对象数据库系统包括数据库和数据库管理系统。系统开发主要包括定义、查询、操纵和功能模块设计。定义:包括类的创建和对象的创建两部分。对象的创建是以类为基础的,面向对象程序设计语言中,一般只提供如数字、字符等最基本的类。大量的复合类需要用户来创建,创建类需要提供5个方面的信息:类标识、相关属性组、操作程序组、语义完整的一组约束条件、可以继承的类型集。,查询:包括结构、属性、行为和内容。查询依据可以是类名、对象名、内容或概念。如通过对象名可查询对象的属性值,通过类名查询类结构、该类中对象或对象的属性以及对对象操作等。操纵:包括可以对类和对象进行插入、删除和修
35、改操作。模块设计:主要包括数据库管理系统要实现的多媒体管理和使用的过程代码,例如,数据的统计、报表、交互方式等。,10.2.4 联机分析处理(OLAP),联机分析处理(OLAP)的概念是由E.F.Codd于1993年提出的。Codd认为用户的决策分析需要对关系数据库进行大量计算才能得到结果,而查询的结果并不能满足决策者提出的需求。因此Codd提出了多维数据库和多维分析的概念,即OLAP。OLAP可以定义为共享多维信息的快速分析。数据仓库一般建立在关系数据模型的基础上,而OLAP则是从多角度、多方面来观察、处理作为一个整体存在的数据,为进一步的分析迅速提供所需的信息。OLAP要对原始的数据进行转
36、换,使数据以人们易于理解的形式真实地反映事物本身。通过OLAP,分析人员、管理人员和执行人员可以从广泛的角度快捷、紧凑地交互访问各自所需的信息,有利于对未来的行动作出决定。OLAP的功能很广,有基本的导航和浏览功能,有计算功能,还有更为重要的分析功能,如时间安排和复杂建模等。决策者要利用OLAP高级功能,他们要求的东西不仅仅是数据访问,而是更为高级的策略性信息和知识。一个典型的OLAP计算比简单的数据累加要复杂得多,如如果糖浆价格每加仑上升0.10美元而运输费用每英里下降0.05美元,那么对软饮料分销商有什么影响?,OLAP的系统特征,1、快速性。OLAP系统应能在5秒内对用户的大部分分析要求
37、做出反应。2、可分析性。OLAP系统应能处理与应用有关的任何逻辑分析和统计分析。用户无需编程就可以定义新的分析算法,并以用户理想的方式给出报告。,3、多维性。是OLAP的关键属性。系统必须提供对数据分析的多维视图和分析,包括对层次维和多重层次维的完全支持。4、信息性。OLAP系统应能及时获得信息,并且管理大容量信息。,10.2.5 后关系数据库系统,什么是后关系数据库?所谓后关系数据库,实质上是在关系数据库的基础上融合了面向对象技术和Internet网络应用的开发背景。它提取了传统数据库的一些特点,结合了Java、Delphi、ActiveX等新的编程工具环境,适应于以Internet Web
38、为基础的应用,开创了关系数据库的新时代。,后关系型数据库以多维数据结构和多种数据库访问方式为基础,以集成的面向对象功能为特征,能够提供事务处理应用开发所需的高性能和伸缩性,支持应用和数据的复杂性。目前,后关系型数据库技术已经用于远程医疗、金融、证券业、交通业、制造业以及电子商务等应用领域。在今后开发基于Web的大量应用中,还需要后关系型数据库的支持。所以,后关系型数据库技术将大有前途。,后关系型数据库的主要特征是将多维处理和面向对象技术结合到关系数据库上。这种数据库使用强大而灵活的对象技术,将经过处理的多维数据模型的速度和可调整性结合起来。由于它独有的可兼容性,对于开发高性能的交换处理应用程序
39、来说,后关系型数据库非常理想。 - 多维数据模型能使数据建模更加简单,因为开发人员能够方便地用它来描述出复杂的现实世界结构,而不必忽略现实世界的问题,或把问题强行表现成技术上能够处理的形态,而且多维数据模型使执行复杂处理的时间大大缩短。例如开发一个服装连锁店信息管理系统时,如果用关系数据库,就需要建立许多表,一张表用来说明每种款式所具有的颜色和尺寸,另一张表用来建立服装和供应商之间的映射,并表示它是否已被卖出,此外还需要建一些表来表示价格变化、各店的库存等等。每成交一笔生意,所有这些表都需要修改,很快这些关系数据库就会变得笨重而缓慢。而在多维数据模型中,可以将这些数据看做是存在于一个“立方体”
40、中,这个“立方体”有足够多的“面”,以便对数据进行完全分类,如款式、颜色、价格、库存等等都能够立刻互相映射,获取数据极其迅速,而且由于清除了冗余的数据,多维数据库非常简单,不仅好用,而且更经济。,- 面向对象技术使用丰富的数据类型来反映现实世界的数据关系,由于它本身具有的模块化和强有力的内部操作能力,能够有效地提高开发者的生产率。面向对象技术的产生是由于人们认识到,人类考虑问题时,想到的不是整数、字符串或其他计算机数据类型,而是一个个的对象。比如说汽车,人们每天驾驶、购买和谈论它时,并不需要深入了解内燃机的物理过程。使用对象技术,计算机也可以只“谈论”“汽车”,而不必理会潜在的各种细节。这样,
41、一种强大的新编程方法就产生了。对象是模块化的,任何对象都可以内部发生变化,而不影响外部的其他编码。对象的这种模块化能力大大简化了应用程序的升级和维护处理。此外,对象还是内部可操作的。一个对象建立后,它就可以被其他的应用程序理解、使用甚至更改,而不管这些应用程序使用的是哪种程序设计语言。 - 如上所述,以事务型多维数据模型和集成的面向对象功能为特征的后关系型数据库能够提供事务处理应用开发所需的高性能和伸缩性,支持应用和数据的复杂性,正成为事务交易处理的优先选择之一。,后关系型数据库的主要特征,1、多维模型和对象技术的完美结合。2、极大地提高了开发效率。3、多种数据访问方式。,10.4 多媒体信息
42、检索,对于大型的多媒体信息库,如Web网络资源、数字图书馆等信息环境中,新资料层出不穷。在Internet和企事业信息系统中,越来越多的应用将包含多媒体数据,如何解决资料整理和使用的问题成为两大重要的课题,传统人工注释的档案办法不能面对浪涌似的信息资料,也难以描述多媒体中的特征,更无法解决实时广播流媒体的处理,必须借助于计算机的实时分析和处理。这就是基于内容的多媒体信息检索所要研究的技术领域。基于内容的多媒体信息检索研究伴随着信息时代的到来而展开。随着多媒体计算机技术的迅猛发展,网络传输速度的提高,以及新的有效的图像/视频压缩技术的不断出现,使人们通过网络实现全球多媒体信息的共享成为可能。然而
43、现有的技术还不能有效地满足人们对海量多媒体信息的需求,因此基于内容的多媒体信息检索应运而生。所谓基于内容检索(Contentbased),就是从媒体数据中提取出特定的信息线索,根据这些线索从大量存储在数据库中的媒体中进行查找,检索出具有相似特征的媒体数据出来。,10.4.1 多媒体的内容处理,多媒体数据的“内容”表示多媒体信息的含义、要旨、主题、包含和显著的性质、实质性的东西、物理细节等,而多媒体内容处理技术要基于对内容的基本定义。,多媒体内容概念,多媒体数据的内容概念包括多个层次:,1、概念级内容:对象的语义表达。例如利用文本的描述,通过分类和目录来组织层次浏览,用链来组织上下文关联。2、感
44、知特性:视觉特性。如颜色、视觉对象、纹理、草图、形状、体积、空间关系、轮廓、运动、变形等,听觉特性如音调、音色、音质等。3、逻辑关系:音视频对象的时间和空间关系,语义和上下文关联等。4、信号特性:通过信号处理方法获取的媒体特征。例如通过小波分析得出的媒体特征。5、特指特征:与应用相关的媒体特征。如人的体形特征、面部特征、指纹特征等。,信息获取的依据主要是基于内容的“概念”,通常是通过“概念”来提交查询。实现“概念”查询的一种基本方式是基于文本式的描述,例如用关键词、关键词逻辑组合或自然语言来表达查询的“概念”。,根据需要获取的具体内容,获得媒体信息的方式可以用人工、半自动、或自动等方式。其中交
45、互型半自动方式将获得更好的效果。,用户获取多媒体信息的方式,当词语难以表达内容特征时,就需要利用媒体呈现的视觉和听觉特性来查询,例如基于颜色、纹理特征或语音特征进行查询。容易使用的提交感知特征方面的主要查询形式有示例方式和描绘方式。(1)示例方式就是通过浏览选择示例,或通过扫描仪、摄像机、数字相机、话筒等设备在线输入图像或音频作为查询的样本。(2)描绘方式可以是用笔勾勒或描绘检索意图。,多媒体内容处理技术,多媒体内容的处理如图10-6所示可分为三大部分:内容获取、内容描述和内容操纵。首先要对原始媒体进行处理并提取内容,然后用标准形式描述所提取的内容,以支持各种内容的查询、检索、索引等内容的操纵
46、。,内容获取(Populating),是通过对各种内容的分析和处理而获得媒体内容的过程。多媒体数据的重要成分是空间和时间结构,首先必须分割出图像对象、视频的时间结构、运动对象,以及这些对象之间的关系,然后提取显著的区别特征和和人的视觉、听觉感知特征来表示媒体和媒体对象的性质。,内容描述(Description),就是针对获取的内容进行描述。为了支持数据管理的灵活性、数据资源的全球化和互操作性,描述必须基于一定的标准。MPEG-7标准被称为“多媒体内容描述接口”,主要采用描述子(Descriptor) 和描述模式(Scheme) 来分别描述媒体的特性及其关系。描述子是特征的表示法,一个描述子就是
47、定义特征的语法和语义学。MPEG-7标准定义了一系列的描述结构、一种详细说明描述结构的语言、描述定义语言(DDL)和多种编码描述方法。,内容操纵(Manipulating),主要针对内容的用户操作和应用。有许多这方面的名词和术语。查询(Query)是面向用户的术语,多用于数据库操作、检索 (Retrieval) 是在索引支持下的快速信息获取方式、搜索(Search)常用于Internet的搜索引擎、摘要(Summarization, Excerpt)是适合于视频和音频等时基媒体的特殊操作、浏览(Browsing) 可以线性或非线性地存取结构化的内容、过滤(Filtering)是与检索相反的一种
48、信息存取方式。,10.4.2 基于内容检索的体系结构,从基于内容检索系统结构如图10-7所示,由特征分析子系统、特征提取子系统、数据库、查询接口、检索引擎和索引过滤等子系统组成,同时需要相应的知识辅助支持特定领域的内容处理。,特征分析该子系统负责将需要入库的媒体进行分割或节段化,标识出需要的对象或内容关键点,以便有针对性的对目标进行特征提取。特征标识可通过用户输入或系统定义。特征提取对用户提供或系统标明的媒体对象进行特征提取处理。提取特征时需要知识处理模块的辅助,与标准化的知识定义直接有关。数据库数据库包含多媒体数据库和特征数据库,分别存放多媒体数据同对应的特征数据,它们彼此之间存在着一定的对
49、应关系。特征库中包含了由用户输入的和预处理自动提取的特征数据,通过检索引擎组织与媒体类型相匹配的索引来达到快速搜索的目的。,查询接口即人机交互界面,由于多媒体内容不具有直观性,查询基于示例方式。必须提供可视化手段,可采用交互操纵、摸板选择和样本输入三种方式提交查询依据。检索引擎检索要将特征提取值和特征库中的值进行比较,得到一个相似度。不同的媒体各自具有不同的相似度算法,这些算法也称为相似性测度函数。检索引擎使用相似性测度函数集去进行比较,从而确定与特征库的值最接近的多媒体数据。索引过滤在大规模多媒体数据检索过程中,为了提高检索效率,常在检索引擎进行匹配之前采用索引过滤方法,取出高维特征用于匹配。,10.4.2 基于内容检索的过程和检索技术,在基于内容检索的过程中相关反馈是一个相当重要的过程。因为仅仅基于图像低层特征很难给出令人满意的结果,主要原因是图像低层特征和高层语义间存在着很大的差距。相关反馈技术就是为了解决这个问题而提出的,一方面需要找出更有效的多媒体表示方法,另一方面通过人机交互来捕捉和建立低层特征和高层语义之间的关联。,