Posts

Concurrency Control.

Image
Concur r enc y Control We saw in Chapter 15 that one of the fundamental properties of a transaction is isolation. When several transactions execute concurrently in the database, however, the isolation property may no longer be preserved. To ensure that it is, the system must control the interaction among the concurrent transactions; this control is achieved through one of a variety of mechanisms called concurrency-control schemes. The concurrency-control schemes that we discuss in this chapter are all based on the serializability property. That is, all the schemes presented here ensure that the schedules are serializable. In Chapter 24, we discuss concurrency control schemes that admit nonserializable schedules. In this chapter, we consider the management of concurrently executing transactions, and we ignore failures. In Chapter 17, we shall see how the system can recover from failures. Lock-Based Protocols One way to ensure serializability is to require that data items be acce...

Application Development and Administration:Advanced Data Types and New Applications

Image
A dvanced Data Types and New Applications For most of the history of databases, the types of data stored in databases were relatively simple, and this was reflected in the rather limited support for data types in earlier versions of SQL. In the past few years, however, there has been increasing need for handling new data types in databases, such as temporal data, spatial data. and multimedia data. Another major trend in the last decade has created its own issues: the growth of mobile computers, starting with laptop computers and pocket organizers, and in more recent years growing to include mobile phones with built-in computers, and a variety of wearable computers that are increasingly used in commercial applications. In this chapter we study several new data types, and also study database issues dealing with mobile computers. Motivation Before we address each of the topics in detail, we summarize the motivation for, and some important issues in dealing with, each of these typ...

Application Development and Administration:Legacy Systems

Legacy Systems Legacy systems are older-generation systems that are incompatible with current- generation standards and systems. Such systems may still contain valuable data, and may support critical applications. The legacy systems of today are typically those built with technologies such as databases that use the network or hierarchical data models, or use Cobol and file systems without a database. Porting legacy applications to a more modern environment is often costly in terms of both time and money, since they are often very large, consisting of millions of lines of code developed by teams of programmers, over several decades. Thus, it is important to support these older-generation, or legacy, systems, and to facilitate their interoperation with newer systems. One approach used to interoperate between relational databases and legacy databases is to build a layer, called a wrappe r , on top of the legacy systems that can make the legacy system appear to be a relational databas...

Distributed Databases

Image
Distributed Databases Unlike parallel systems, in which the processors are tightly coupled and constitute a single database system, a distributed database system consists of loosely coupled sites that share no physical components. Furthermore, the database systems that run on each site may have a substantial degree of mutual independence. We discussed the basic structure of distributed systems in Chapter 18. Each site may participate in the execution of transactions that access data at one site, or several sites. The main difference between centralized and distributed data base systems is that, in the former, the data reside in one single location, whereas in the latter, the data reside in several locations. This distribution of data is the cause of many difficulties in transaction processing and query processing. In this chapter, we address these difficulties. We start by classifying distributed databases as homogeneous or heterogeneous, in Section 19.1. We then address the questi...