Overview

Chapter 1 provides background material. It starts by reviewing a wide spectrum of wireless technologies by placing special emphasis on their characteristics that affect data management. Then, we present the underlying architecture, basic definitions and concepts, and a number of applications that take advantage of mobile computing. The chapter concludes by enumerating the basic challenges in mobile data management.

Chapter 2 presents the general principles behind building software for mobile applications. Software architectures ranging from client-servers and proxies to software mobile agents are introduced. Structuring distributed applications by efficiently partitioning the computation between mobile and static components is also discussed. Concepts such as application-awareness of location and disconnection, and adaptation to varying connectivity conditions are introduced. At the end of this chapter, a concrete realization of these architectures and concepts is provided through their deployment in the design of an example web-browsing application.

Chapter 3 concentrates on support provided at the system level. Techniques for sustaining frequent network disconnections and weak connectivity are discussed within the context of file, database management, workflow management, object-based, and web systems. Such techniques include revising cache management methods, replication protocols, and transaction models. Then, treating mobility by relocating data and computation is covered. Finally, failure recovery is discussed with special emphasis on distributed checkpointing.

Chapter 4 is devoted to information representation, dissemination and management. The deployment of broadcast for disseminating information is the first topic discussed. Methods for organizing broadcast data, approaches to combining on-demand and broadcast data delivery, techniques for cache management in broadcast-based systems and mechanisms for invalidating caches through broadcast are reviewed. The chapter also presents data models and query management techniques for location data as well as an overview of other novel topics in query management.

Chapter 5 is dedicated to methods for location management. Various schemes for the distribution of databases containing users' locations as well as techniques for handling location updates and queries are presented. Techniques such as caching and replication of the location of those users that are frequently looked up can reduce the location query cost with an increase in the update cost. Partial updates and partitioning techniques can reduce the cost of updates. for location databases is also covered.

Chapter 6 is devoted to presenting case studies. We discuss how the issues presented in the previous chapters have been addressed in the following systems: the CMU's Coda file system, the MIT's Rover application toolkit, the Xerox's Bayou weak replication storage system and IBM's WebExpress web browsing system.

The book concludes by summarizing problems and solutions, and suggesting promising research topics.