什么是多媒体数据库? 候丰胜 1997-01-01   目前,我们所使用的数据库大多是关系型数据库,而随着多媒体技术的不断推广,所要处理的信息的形式更多样化了,有图像、声音、动态视频等,这些信息不规则,没有一致的取值范围,没有相同的数据量级,也没有相似的属性集,用传统的关系型数据库来处理就很困难,下面我们来介绍一种新型的多媒体数据库。 #2  一、多媒体数据的类型   多媒体数据有字符数值、文本、声音、图形、图像(包括图形、位图图像、动画和视频)等类型。 #2  二、多媒体数据库的形式 #3  (一)扩充关系数据库   扩充关系数据库通过在原来的关系数据库的基础上增加若干种数据类型来管理多媒体数据。例如由Borland公司开发的Paradox for Windows,增加了四种数据类型:动态注释(Dynamic memo)、格式注释(Fomatted memo)、图形(Graphic)和大二进制对象(Blob)。动态注释和格式注释用于存储文本数据,其中格式注释还可用于描述文本的字体尺寸和颜色等属性。图形属性用于存储具有标准文件格式的图形图像文件。Blob属性存储其它任何类型的二进制数据。   另外,由Microsoft公司开发的Foxpro系列产品是在dBASE基础上发展起来的。FoxPro 2.5 for Windows以上版本引入了一个新的属性类型General。General类型可以容纳任何一种多媒体数据,包括文本、图形、图像或声音数据。   扩充关系数据库虽然可以处理一些多媒体数据,但它对关系模型并没有扩充。因此,要用它处理复杂对象仍然比较困难。 #3  (二)NF2模型   NF2模型不再遵从关系范式中“表中不允许再有表”的规定,允许关系的属性是一种关系,另外,它还支持隐含的向前引用以及向后引用,但NF2模型在定义抽象数据类型和反映多媒体数据各成份之间的空间关系、时间关系以及多媒体的处理方法等方面仍有困难。 #3  (三)面向对象数据库   “面向对象”的基本概念我们在第30期已作过专门介绍。   1.优点   ●支持“聚合”与“概括”的概念,从而能更好地处理多媒体数据等复杂对象的结构语义。   ●支持抽象数据类型和用户定义的方法,便于数据库系统支持定义新的数据类型和操作。   ●能有效消除多媒体数据之间的类型差异,并且很容易实现并行处理,也便于系统模式的扩充和修改。   ●实体独立于值存在,因而避免了关系数据库中讨论的各种异常。   ●查询语言通常是沿着系统提供的内部固有联系进行的,避免了大量的查询优化工作。   2.存储结构和存取方法   ●基于关系系统的方法   每个对象类存放在一个关系中,任何对象一进入系统,数据库管理系统自动分配给它一个全库唯一的系统标识符,这个系统标识符在对象的生命周期中是不能由系统或用户改变的。对象间的联系是通过在存放对象组中增加另一类对象的系统标识符体现的。系统对相关对象类建立索引,当用户要求按“聚合”或“概括”联系查询时,系统就可以使用链接索引满足其所有查询要求。   使用系统标识符的优点是:对象所有属性都不必再由用户定义标识码,降低了更新操作的限制,使所有属性可依统一方式进行处理。另外,由于一般情况下系统标识符比用户数据小得多,链接索引可以做得很小,甚至可以放在内存在,大大加快了查询速度。   ●更符合多媒体对象特点的存储方法   虽然基于关系系统的方法可以利用许多关系系统成功的经验,但是现有关系系统的存取方法并不完全适合多媒体数据的特点。目前,适合多媒体对象特点的存储结构和存取方法有:Exodus系统的B+树索引结构、适合多维空间对象的R+树索引结构、文本对象的索引结构。