To support modern applications that use multimedia data, numerous researchers and system developers have been focusing on the development of multimedia database systems. Multimedia data comprises of static media, like text and images, that do not vary with time (with respect to the output device) and dynamic (or continuous) media, like audio and video, which vary with time. Whenever continuous media is involved, in order to ensure smooth and meaningful flow of information to the user, timeliness and synchronization requirements are imposed. Timeliness requires that consecutive pieces of data from a stream be displayed to the user within a certain duration of time for continuity. Synchronization requires that data from different media be coordinated so that the user is presented with a consistent view.
Though efficient storage and retrieval strategies have been developed, since the data rates involved are very high, disk I/O is a potential bottleneck, i.e., the number of concurrent sessions supported could be limited by the bandwidth of the storage system. Hence, it is important to make better use of data brought from the disk into the database buffer whenever possible. In this work we explore the potential benefits that can be achieved through continuous media sharing, wherein the data fetched into the server's memory is used by multiple requests that arrive over a period of time. Though buffer management schemes used in traditional database systems share data, they are unsuitable for multimedia data because of the timeliness and synchronization requirements. Alternatively, schemes developed thus far for multimedia data disregard sharing of continuous media data. The popular Use-And-Toss (UAT) scheme tosses away used data so that the next piece of required data is brought into the same buffer. Thus the UAT scheme is good only if data sharing cannot be exploited. The buffer sharing scheme discussed in only reuses buffer space and does not consider continuous media sharing.
The motivation for our work comes from the fact that once a user has requested a playback, advance knowledge of the multimedia stream to be accessed for this user can be utilized to promote sharing between this user and future users (planned sharing for future accesses). To achieve this, we introduce the notion of continuous media caching. It is a simple and novel technique where buffers that have been played back by a user are preserved in a controlled fashion for use by subsequent (or lagging) users requesting the same data.This technique can be used when sufficient buffer space is available at the server to retain data for the required duration as in the case of multimedia database systems that handle video databases. Since the system can avoid fetching the data from the disk again for the lagging user, it is possible to support a larger number of sessions than that permitted by the disk bandwidth. To help the system decide whether a new request is to be shared with an existing one, we have designed suitable heuristics. A new buffer management scheme called SHR has been developed that enhances UAT with continuous media caching. In addition to reusing old data, it also allows sharing of future data. We explore the benefits of continuous media sharing in multimedia database systems by considering the News-On-Demand-Service (NODS) where a customer makes a request by choosing a topic from a set of offered topics. This typifies applications where extensive data sharing is possible.
Batching is another technique for improving the performance of a system by grouping requests that request the same topic. By using continuous media caching in conjunction with batching, the performance of multimedia database systems can be further improved. To examine such techniques, we also study two other schemes BAT-UAT and BAT-SHR, which are enhancements of UAT and SHR respectively with batching. Simulation studies indicate that continuous media caching improves the performance of multimedia applications when data sharing is possible.
Back to the Database Systems Home Page