面向对象数据库系统在多媒体应用中的探索与实践
立即解锁
发布时间: 2025-08-23 00:42:29 阅读量: 7 订阅数: 23 


数据库与数据通信网络系统:技术与应用第一卷
### 面向对象数据库系统在多媒体应用中的探索与实践
#### 1. 多媒体应用与新一代数据库系统需求
随着信息基础设施的发展,新兴的多媒体应用如数字图书馆和文档仓储等网络多媒体应用前景广阔。为了高效灵活地开发和执行这些应用,我们需要新一代数据库系统。
##### 1.1 多媒体信息系统的需求
- **交互性与服务质量控制**:多媒体应用必须具备交互性,系统的每一层都要能够控制服务质量(QOS)参数,如延迟、比特率和帧率等,以实现多媒体数据的实时交互处理。
- **大量数据处理**:多媒体服务需要处理文本、视频和图像等大量数据,数据库层需要高效存储和访问大量数据的技术,如访问方法和聚类;操作系统层需要分层存储系统和线程机制;网络层需要适合多媒体的网络协议及高效处理这些协议的能力。
- **异构数据处理**:媒体数据存在异构性,如文本和视频,且它们之间存在时间和空间上的依赖关系。用户需要能够统一操作异构媒体数据,通过定义超媒体链接明确构建异构媒体数据的结构,同时定义各种媒体数据之间的时间和空间关系。数据库层应提供多媒体数据模型,操作系统层要对音频和视频等流媒体数据进行时间同步和实时处理,网络层要高效处理基于 ATM 的多媒体网络协议。
- **分布式处理**:高级多媒体应用应支持分布式处理,确保站点自治。用户应能够使用分布式、面向对象的计算技术,如活动对象或代理。数据库层需提供多数据库管理,操作系统层要进行分布式资源管理。
##### 1.2 多媒体数据库系统的问题
- **逻辑与物理数据区分**:在网络多媒体应用中,需要区分逻辑媒体数据和物理媒体数据,允许用户独立于物理细节和数据格式访问内容,灵活定义多媒体视图。
- **查询功能**:必须提供基于关键字的查询功能,因为仅浏览大量媒体数据耗时过长。
- **内容检索**:提供基于内容的检索功能,在网络多媒体应用中,大量数据可能未预先附加关键字,用户有时需要通过颜色和运动方向等特征表达查询,基于内容的检索允许不精确匹配。
- **导航搜索**:除查询功能外,还需提供导航搜索功能。在大规模网络应用中,明确指定链接工作量大,因此需要根据关键字和特征数据的相似性对多媒体数据进行逻辑聚类以实现导航。
- **物理存储选择**:允许用户选择适合应用的物理存储和物理聚类。
- **并行分布式处理**:在网络多媒体应用中提供并行、分布式处理,如并行播放多个流,在服务器之间分配处理负担,将查询联合到多个分布式服务器。
- **程序组件处理**:将程序组件作为一等对象处理,用于控制数据库访问和提高数据库应用开发效率。
- **QOS 控制**:控制网络多媒体应用中的 QOS,在多个用户并行播放多个流时,需要管理 CPU 和网络等资源以保证用户所需的 QOS。
#### 2. 系统架构
##### 2.1 数据模型
- **多媒体模型**:我们认为多媒体数据是多种媒体数据及其操作的组合,提供结构、时间、空间和控制操作作为媒体组合运算符。多媒体系统由多媒体数据库和应用组成,数据库包含文本、图形、图像和流等媒体数据,应用由脚本组成。脚本具有标识符和对一组流的时间和空间操作以及 QOS 选项,流和帧也有相应的操作和属性。QOS 选项是提供给 QOS 控制器的参数,通过执行指定的 QOS 函数或检索存储的 QOS 数据来控制 QOS。例如,Script 1 脚本通过一系列操作实现对特定视频流的检索、选择、排列和同步播放。
- **结构操作**:Jasmine 模型对多媒体对象的结构进行建模并提供结构操作,如定义流和帧等媒体对象。可以通过查询语句检索特定时间和主题的流。
- **时间和空间操作**:时间和空间数据被视为所有流媒体数据的通用键,通过定义集合导向的时间和空间运算符来隐式构建多媒体数据的结构。时间分为实时、内部时间和外部时间,空间分为真实空间、内部空间和外部空间。通过时间和空间运算符可以实现流的时间组合和空间组合。
- **控制运算符**:由代理表示的进程代表控制结构,进程由事件、条件和动作组成。事件可以串行、并行或交替发生,条件可以监控数据库状态、进程状态和 QOS 状态,动作可以指定进程的控制和其他模型运算符。例如,通过指定 QOS 参数和并行播放操作,可以实现两个流的并行播放。
##### 2.2 整体架构
多媒体数据库系统的架构由代理管理、媒体管理、对象管理、数据管理和多数据库管理等层位于操作系统和网络协议管理层之上。代理管理层使用户能够灵活描述多媒体应用,媒体管理层提供对单个媒体数据的接口,对象和数据管理层基于 Jasmine OODB 提供基本的数据库管理功能,多数据库管理层提供对传统媒体和新媒体的集成访问。
```mermaid
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(On - Demand - Services):::process --> B(Multimedia Database S
```
0
0
复制全文
相关推荐










