You are on page 1of 9

Database Access in Mobile Environments

Andreas Heuer
Computer Science Department, University of Rostock, D-18051 Rostock heuer@informatik.uni-rostock.de

Astrid Lubinski
Computer Science Department, University of Rostock, D-18051 Rostock lubinski@informatik.uni-rostock.de

Abstract Mobility is the cause for new requirements on database systems. Database systems used in classical LAN- or hostbased environments provide these new features deciently. New concepts are needed in mobile environments. The conventional client-server architecture has to extended in a client-agent-server architecture. We describe new approaches in database technology to meet the new requirements like adaptive database system components and intensied use of query statistics. This includes the management of queries and query results. The access to the information will be done via an OQL-like interface. The OQL query will be transformed into queries of the underlying relational or object-oriented database systems used by the information servers. Mobile computing with the help of small devices via wireless networks is in our opinion only one possible mobile scenario. In this paper we present a new and more general interpretation of mobility based on mobility of users. The work on mobile database access in this paper is part of the project Mobile Visualization (MoVi). Users not only get access to heterogeneous information from different places, with different technical environments and with different aims, in a homogeneous way, but also want to visualize this data adequately.

1 Introduction
Worldwide, there is a lot of multimedia information available electronically. They form a Universe of Information, the so called Infoverse, where people travel on information superhighways. These information superhighways are of increasing interest even in business and not only in science. An easy and descriptive access to this information is not possible up to now. It is desirable to support the access to and search for information in different and changing environments and to visualize the information in an application-specic way. Most of these mission-critical data are heterogeneous and kept in database systems. In our opinion mobility consists of the mobility of users, the mobility of computers and the mobility of information. Therefore, users and mobile computers cannot be seen as a mobile unit as in [IB93, IVB94]. Users, computers and information are mobile with respect to their environments. This environment can include other humans, devices or computing systems, respectively, and information as well as the location. In Figure 1 we show a general scenario of mobile computing, where the mobility of humans is the main focus. The mobility arises from mobility of users either with the help of mobile hardware (devices and networks) or by changing the terminal. The scenario of a human who is using a stationary server via a xed network is also a mobile scenario, because it is a special case of mobility. The full mobility inherits all problems of the normal stationary distributed computing, but adds new features. Every kind of mobility results in a changing mobile environment, which inuences decisively the information access, transfer and the visualization.
This

The paper is submitted to the DEXA96 work has been supported by the German Research Association under contract Schu 887/3-1

stationary unit

fixed (stationary) network

HUMAN

wireless (mobile) network

mobile unit

Fig. 1: Denition of Mobility

The contents of the mobile environment is situation dependent. We call it the Context. All applications have to adjust to the varying context. The remainder of this paper is organized as follows: After an introduction of examples of mobile information access in Section 2 and the overview of the different problems of mobility in Section 3 we will describe the context concept in Section 4. We introduce an architecture of an object manager supporting the mobile and heterogeneous information access and in Section 5 the query interpretation and transformation techniques used in mobile environments. The last Section 5 summarizes the results, and mentions some open research issues.

2 Mobile Application Scenarios


We have investigated several application scenarios for requirements in mobile environments and we have detected that all of them have different, sometimes overlapping requirements. They depend on the concrete requirements of the mobile persons and their tasks, goals and intentions, on the characteristics of the terminals and networks and on the properties of the accessed information. Now we will present two of them. One application is an information server for data about the conditions of forests, the other one is the software support for a highly mobile furniture production and Sale planning system. 2.1 Management of the Conditions of Forests The data for the conditions of forests has been supplied by the forestry ofce of the state Mecklenburg-Vorpommern in Germany. The information is heterogeneous and includes multimedia. During an interval of ten years, the conditions are yearly reassessed automatically. After ten years this information deviates from the real conditions and has to be updated. Every ten years the forest stand of Mecklenburg-Vorpommern will be set up. The forest workers need for this process the reassessed information, a forest map and a satellite picture of their current location. Then they insert the new conditions of forest, which are the base for planning usage and effects of industry buildings or special activities on the conditions of forests. The forest workers will be mobile using mobile devices as small as possible like PDAs. Special requirements in their mobile environment are related to the limited resources of the device and the network, and their location dependent work. 2.2 Furniture Production and Sale The data for the furniture production have been supplied by a local company. They have different production plants with local information servers. Therefore, the information is distributed but homogeneous because of one underlying (relational) database system. The production process is coordinated by means of a laptop in a mobile environment (a van) and is totally client-driven. Due to the high communication costs, disconnections are planned and quite frequent. The other mobile persons are truck drivers and representatives who make contracts with cus-

tomers. The representatives use laptops, the drivers small devices installed in the trucks. The main problems in this environment are related to dynamic and replicated information under frequent disconnections because of high communication costs.

3 Effects of Mobility
Mobility results in several new challenges for the efcient access to information. Since the Infoverse is heterogeneous and distributed, we need to have a transparent access to the information without knowing the underlying data models, schemes, and location of the information which can all be changing dynamically. Most of the information will be multimedia data which have to be handled efciently. In a mobile environment, disconnections can be quite frequent and have to be supervised by the system. The optimization of queries against this Infoverse has to be adapted dynamically due to changing aims of optimizations. The restricted resources have to be considered. And last but not least, the protection of the privacy is even more important in a mobile environment. We will explain each of these challenges in turn. 3.1 An Architecture for Mobile Database Access The access to the Infoverse has to be transparent to the user. The user should not need to know the specic structure of the stored data and the physical location of these data. Additionally, a user should not need to know which kinds of information are used to realize his access. Localization of data in a world-wide environment and the resourcespecic preparation of this information is a typical requirement for mobile information access. Current database systems, even distributed ones, do not support these features in an adequate way. The architecture used for mobile database access is a component of the architecture for mobile visualization ([KHK+ 95]). The classical client-server architecture is replaced by a client-agent-server architecture as in other approaches, too. Nevertheless, the functionality of these agents is different. In the Oracle-in-Motion approach [Ora95], the agent accepts messages from a mobile node, executes programs, and makes data available for the transfer. In [ZD95], an agent called intermediary is introduced to lter or delay all but the most essential data that would travel over the slow link. This agent works bandwidth-dependent. In [BBK+ 95], agents (here called station and domain managers) only exist on the server. These managers maintain available resources and services of a domain of sites. Within the MoVi project, we introduced an Information Agent which is available on each of the mobile and some of the stationary nodes (the contact servers). The architecture of this information agent is presented in [Kir96]. It contains an object manager (see Figure 2) for additional database functionality, and information and message handlers for intelligent mediaspecic information transfer and application of different exchange strategies like level-of-detail or prefetch. The communication between nodes is controlled by these information agents. The server, which is contacted rst, is in most cases a stationary server to log in from the mobile node and not the home server of the user. As a special case of a mobile node, the contact server in turn can be connected to another server, e.g. the home server of the user. The contact server plays a special role in the case of limited resources on the used node, so the functionality of applications including database systems have to distribute among the end node and the contact server. The information agent of the contact server manages further connections. This object manager is a database system enlarged by special functionality for mobile environments. Queries and query results will be cached on the mobile client and on the contact server as long as resources are available. This cache management is also part of the information manager. It will support the recovery from disconnections and the optimization of other queries by using locally available information. 3.2 Problems of Information Management in Mobile Environments 3.2.1 Disconnections and Dynamically Changing Information Due to cost reduction and technical reasons, a connection between the computer of a mobile user and a contact server will be frequently interrupted, either user-driven or system-dr iven. Therefore, the information on the mobile node may be inconsistent. If the information is very dynamic and if it is replicated for efciency reasons, this consistency problem will be even more important to solve. In the scenario of mobile furniture production the article prices are a dynamic information, which can be inconsistent because of many cost dependent disconnections. One approach to check the consistency of information on the mobile node is to attach a timestamp with the data, which indicates the expiry time. The prices in the furniture production and sale - scenario expire for example weekly while the forest information is valid one year. This expiry time is either estimated, stored with the data on the server or xed by the context of the information. 3

global and local Metadata - global scheme - local scheme - fragmentation scheme - contexts - access rights n I formation - local information - cache: - queries - query results

Database Management System - ODMG component - cache management - context management - aggregation component

Objectbus

application (visualization), remote Object Manager

Fig. 2: Architecture of the Object Manager

For example, trafc information for a specic region is only interesting as long as the user has not left this region. Additionally, trafc information should not be older than a few minutes. Disconnections have to be prepared by the system by transaction protocols and active recovery and connection reestablishing mechanisms. 3.2.2 Multimedia and Distributed Information in Federative Systems The information in the Infoverse is distributed, heterogeneous, and consisting of multimedia data. Since the access should be transparent with respect to location and data model, one can use global and distributed meta schemes to maintain structure and contents of information servers in the Infoverse. Within the MoVi project, the reengineering of the heterogeneous information to a global meta scheme is assumed to be done. The global meta scheme integrating the different database models like relational, hierarchical, object-oriented but also non-database models like les, hypertexts and hypermedia, is represented as a ODMG-93 schema [Cat94]. ODMG-93 is the current standard for object-oriented database models which has to be slightly extended within this project to reect the needs of multimedia and mobile environments. While considering heterogeneous data models and schemes, we do not consider differences in specic systems and operating system platforms up to now. More details on the representation of schemes in MoVi will be given in Section 5. The information in the scenario of conditions of forests is managed in a heterogeneous manner, distributed in an objectoriented (O2 ) and a relational (Ingres) database system. The maps of the forest and the satellite picture are graphical information. They have to reduce for their application on the PDA. 3.3 Dynamic Database Components 3.3.1 Adaptive Optimization due to Changing Optimization Aims Queries from the computer of the mobile user against the Infoverse have to be optimized due to changing cost functions (see also [BA95]). While in classical centralized or distributed database systems the costs to be optimized are query response time or transaction throughput, in mobile environments there are different cost functions which have to be optimized dependent on the context: query costs (money for the connections between computers), energy (of a mobile battery-driven computer),

available resources like amount of free secondary storage, or screen parameters like resolution, colour and size. The optimization aims and the parameters can be changed dynamically, for example, in changing from battery mode to plugged mode. Hence, adaptive optimization techniques have to be used in this mobile environment. The cost parameters which have to be considered to calculate the cost functions are not only database-specic parameters like amount of data and complexity of query operators but also parameters for compression, decompression, transport and visualization complexity of the involved (multimedia) data. 3.3.2 Dynamic Database Kernels Restricted resources of the mobile computer like free main or secondary storage, size and resolution of the screen and energy not only affect the query optimization process but also the context-dependent transformation and adjustment of queries and their results. The notion of context used in the MoVi project and its application to the query interpretation, transformation and optimization process will be explained in Section 4. Restricted resources adress also restricted database functionality. On most mobile PCs or PDAs, it is not possible to use existing database systems or intelligent database clients. Since it is not sufcient to simply install query interfaces on these machines which only send an SQL-query to the server, we have to implement a platformindependent minimal database kernel capable of querying and managing databases according to ODMG-93. This kernel should include at least some parts of the query optimizer and transformer. Since resources are changing, the kernel should be adaptable and extensible by features otherwise provided on the contact server. If it is possible, these features should be implemented on the mobile client, too. Loading database modules from the contact server to the mobile client is one topic of further research. A candidate for implementing this is the Java language. 3.3.3 Privacy and Data Security Several problems in mobile information access are concerned with the protection of privacy. How can it be guaranteed to communicate without observation? How can actions be proven? How to do identication and authorization of a mobile user? How can patterns of motion be protected against misuse? There are some approaches in this area which shall be integrated into the MoVi project. One example is the work of [TF95].

4 Contexts Possible Classication and Usage


The notion of context that we use in this paper has the general meaning: Contexts affect the semantics of information or the semantics of processing this information in some way. After a classication of possible (concrete) contexts in mobile environment we show how to use contexts, especially in query interpretation and aggregation. 4.1 Context Classication If we look at the way contexts affect the semantics of information, we can classify them as follows: 1. User attributes like preferences, wishes, skills, and his roles. The user-specic context information affects the selection of information, the visualization of information, and the design of the user interface. 2. Environment attributes with respect to local, historical, cultural, trafc, and temporal information. Queries will be adjusted to the concrete environment of the user, in general with respect to local (where) and temporal (when) information. 3. Application attributes like priorities (signicance of information for the query result), storage and processing sites, timestamps as expiry time or valid time for dynamically changing information, criteria for lossless information reduction (especially for image and video data), and processing times. 4. Resource attributes of used computers (mobile, stationary), used servers, network information, and so on. A special context information in this case are screen parameters like resolution and size, energy parameters like battery or plugged mode, battery capacity, and power consumption with respect to specic actions, computer parameters like available free secondary or main storage, type of processor, and so on, 5

network parameters like bandwidth (the current bandwidth, the average bandwidth in comparable situations), functionality (available programs and services). These classes of contexts are not orthogonal. To adjust a query to restricted resource, application and environment attributes can be used while resources attributes are given. The available contexts show how a query can be restricted to meet the restricted resources while preserving the application-specic semantics of the result. 4.1.1 Contexts in the conditions of forest - scenario The main contexts are 1. Every forest worker needs a personal view of the forest information, its presentation and processing order. These are user contexts. 2. The location affects the query in limiting the query result by expanding the where-clause with the location (see Figure 3,4). 3. Application attributes are for example priorities among information because of their kind of media. 4. The forest workers plan to use PDAs for their work because of the small weight and extent. Then there are many restrictions in database access and visualization due to restricted screen and memory parameters. The wireless network brings additional problems. The main contexts in the furniture-production scenario are disconnections and the dynamics of the information. 4.2 Use of Contexts Contexts affect the query interpretation and transformation in various ways. Among others, they inuence selection, localization, aggregation, optimization, and visualization of informations. In the remainder of this section, we will sketch some of these. 4.2.1 Context-dependent Query Interpretation and Transformation Queries can be changed using contexts, as already shown in [SSR94] with C-SQL (Context-SQL). Due to user attributes or environment attributes, the original query can be interpreted if it seems to be incomplete or not meeting the user needs. A query give me the city map will be interpreted as give me the city map of the city the user is just staying at. A query can be transformed due to application or resources attributes. For example, if a video is requested which cannot be shown in full resolution and colour on the mobile PC due to reasons like storage capacity and processing speed, a projection or abstraction to a video with lower resolution or to the start sequence of the video has to be performed. A OQL-query in the conditions of forest - scenario can be the following: In Figure 4 the same query is enlarged

Fig. 3: A query in the conditions of forest - scenario

by the location context of the forest worker automatically. The location context is determined by a GPS and will be transformed in a location in the forest map. 4.2.2 Context-dependent Aggregation The requested information can be aggregated to a query result by different types of aggregations (sets, lists, tuples, . . . ). Resource attributes like frequent disconnections or restricted local storage can affect this aggregation. Priorities can be used to order the list so that the most important information will be used rst. 6

Fig. 4: The same query, changed by the location context

This technique is called modulation of the query result. Besides context-dependent aggregation, other abstraction mechanisms will be used to reduce the amounts of details in a query result. 4.3 Context Management The context information should be managed where it arises or where it is used, i.e. with the information to be affected by the contexts. Classical database systems have data dictionaries or catalogs with a xed structure, so that they cannot easily be used for this task. In general, the object manager of the information agent will manage the contexts. The object manager can replicate these contexts on the contact server and the computer of the mobile user. Resources contexts are exceptions since they can be very dynamic. In this case they are calculated or estimated on request.

5 Query Processing in Mobile Environments


Heterogeneous, distributed multimedia information in the Infoverse is stored in different databases with different data models and schemes. As mentioned before, we use a global but distributed meta scheme which represents the information in the ODMG-93 object-oriented database model [Cat94], since object-oriented models proved to be useful as a global interface to federative systems [DAO+ 95]. The transformation of such structures into relations of a relational database systems are well-known, e.g. according to [Heu89]. On the other hand, queries are generated in OQL notation [Cat94] and transformed into queries of the underlying database systems. Such kinds of transformations can be found e.g. in [VdBH93]. Before this transformation will be processed, the contextdependent interpretation and transformation of the query will take place. 5.1 Interpretation and Transformation of the Global Query As explained in Section 4, the query is rstly interpreted due to user and environment attributes and then transformed due to application and resources attributes. The result of adjusting the query in a context-dependent way is another OQL query. The simplest way is an enlargement of the where-clause. 5.2 Using the Local Cache For the modied OQL query, a lookup of the cache of queries and query results will be performed. If a query result for a query equivalent to the given one or more general to the given one is found, the query result will be retrieved from the local cache. In the case of a more general query, the new query has to be processed against this preliminary result. If there is a more specic query in the cache, the given query can be modied to only retrieve those parts of the result from the server not available on the mobile client. If the expiry time of the query result has passed, the complete query has to be transformed into queries for the specic server systems. Another approach to cache management can be found in [BI95].

5.3 Transformation to Location-Specic Queries If only some parts of the query results are available on the mobile client, the request has to be sent to the contact server. The rst step of the query optimization indicates where the transformation of the OQL query to locationdependent queries should be done (on the mobile client, in most cases on the contact server, in parts on other information servers). The localization of the information will be done by meta scheme information. After optimizing the location-specic queries, the estimated costs of the query processing and the structure of the query results to be aggregated are sent to the mobile client and may inuence the initial query transformation again due to resource restrictions: if more data are expected than the mobile client can process, the query is further restricted due to context information. After this second modication of the initial query, the query processing is transformed on the different servers, aggregated at the contact server and then sent to the mobile client using context-specic aggregation concepts.

6 Summary and Further Research


We presented the object manager as part of the information agent of the MoVi project. Requests to the object manager are formulated as OQL queries and interpreted and transformed according to different contexts. Then, queries are transformed into queries specic to different database systems. The query evaluation process has to be optimized in an adaptive way due to changing optimization aims and changing parameters for the cost functions. The notion of context affecting the query interpretation and transformation process was introduced. Existing database techniques have been extended to integrate the local cache management (caching queries and query results), to manage the contexts, and to change the standard optimization and evaluation process. All these features shall be integrated in a database kernel which is supported at the mobile client or the contact server. Further research topics will be the extension of the cache and replication management, especially the detection of (partial) queries with results already cached on the mobile client, the extension of cost functions and integration into a cost-based, distributed optimizer which will evolve into a global planner for the whole MoVi project, the development of a self-adaptable database kernel which can be adjusted to the resources available at the mobile node, and the special support of mobile users instead of mobile computers. Another global topic is to extend the results to virtual mobility where the information is highly mobile while the users mobility is replaced by videoconferencing and so on. Even if the user is not mobile anymore in this scenario, aspects of research for mobile environments can also be applied for this case. 6.1 Restrictions in MoVi The prototype implementation of the MoVi information agent and especially the object manager is restricted in several ways. We concentrated on queries and did not consider updates and transactions up to now. Especially for transactions, new concepts have to be realized in a mobile environment. We assumed the availability of a global distributed meta schema. since the reengineering of database schemes and le structures into an object-oriented description is a hard problem in general, this should be solved separately from the MoVi project. We do not actively localize and connect to the mobile computers from the server. For us, the mobile user with his computer is active, not the server in getting contact to the mobile users. The problems of cooperation between users with mobile or stationary computers are not considered up to now. The user only cooperates with the Infoverse. On the other hand, the platforms we use up to now are restricted to relational database systems (INGRES), object-oriented database systems (O2 ), for the servers, both running under UNIX, and Windows-based PCs for the mobile computers. 8

Acknowledgements We would like to thank all our colleagues within the MoVi project, especially Thomas Kirste and J rge B nigk, for discussions on the object manager architecture. Additionally, we have to thank o o Monika Ludwig and Henning Zingler, both students implementing parts of the object manager on top of O2 and INGRES. J rn Waterstraat worked on his masters thesis on contexts and gave several hints to specify and use cono text information in mobile environments. Many thanks also to the Landesamt f r Forstwirtschaft, Schwerin, the u forestry ofce of Mecklenburg-Vorpommern. While preparing this paper, we had a lot of help from our colleagues in the database research group, Guntram Flach, Uwe Langer and especially J rgen Schlegelmilch and Joachim u Kr ger. o

References
[BA95] B. Bhargava and M. Annamalai. Communication Costs in Digital Libraries. In Proc. of the 6th Database and Expert Systems Applications (DEXA), London, 1995.

o [BBK+ 95] W. B hmak, B. Bellmann, S. Kummel, T. Reigler, and A. Schill. Systemunterst tzung f r verteilte Mobilrechner-Anwendungen. u u In GI-Fachtagung Kommunikation in verteilten Systemen, Chemnitz, pages 243257, 1995. [BI95] D. Barbara and T. Imielinski. Sleepers and Workaholics: Caching Stragies in Mobile Environments. In VLDB Journal 4, 1995. R.G.G. Cattell, editor. The Object Database Standard: ODMG - 93. Morgan Kaufmann, San Mateo, CA, 1994.

[Cat94]

[DAO+ 95] A. Dogac, M. Altinel, C. Ozkan, B. Arpinar, I. Durusoy, and A. Altinas. METU Object-Oriented DBMS Kernel. In Proc. of the 6th Database and Expert Systems Applications (DEXA), London, 1995. [Heu89] A. Heuer. A data model for complex objects based on a semantic database model and nested relations. In Nested Relations and Complex Objects in Databases, volume 361, pages 297312. LNCS, 1989. T. Imielinski and B.R. Badrinath. Data Management for Mobile Computing. In SIGMOD RECORD, Vol 22, Nr. 1, 1993. T. Imielinski, S. Viswanathan, and B.R. Badrinath. Data on Air: Organization and Access. In IEEE Transaction in Knowledge and Data Engineering, 1994.

[IB93]

[IVB94]

[KHK+ 95] T. Kirste, A. Heuer, B. Kehrer, H. Schumann, and B. Urban. Concepts for Mobile Information Visualization: The MoVi-Project. In Proc. of the Sixth Eurographics Workshop on Visualization in Scientic Computing, 1995. [Kir96] T. Kirste. The MOVI project: Introduction and modeling concepts. In Proc. of the IMC96, 1996. Oracle in motion. Technical report, Oracle, 1995. Draft paper. S. Sciore, M. Siegel, and A. Rosenthal. Using Semantic Values to Facilitate Interoperability Among Heterogeneous Information. In Transaction on Database Systems, 1994. J. Thees and H. Federrath. Methoden zum Schutz von Verkehrsdaten in Funknetzen. In H.H. Br ggemann and W. Gerhardt-H ckl, editors, VIS 95 (Verteilte IT-Systeme), Braunschweig, Wiesbaden, 1995. Vieweg. u a

[Ora95]

[SSR94]

[TF95]

[VdBH93] J. Van den Bussche and A. Heuer. Using SQL with object-oriented databases. Information Systems, 18(7):461487, 1993. [ZD95] B. Zenel and D. Duchamp. Intelligent Communication Filtering for Limited Bandwidth Environments. In Proc. of the Fifth Workshop on Hot Topics in Operating Systems, Rosario, 1995.

You might also like