Transactional Information Systems: Theory, Algorithms, and the Practice of Concurrency Control and Recovery (The Morgan Kaufmann Series in Data Management Systems)
Format: PDF / Kindle (mobi) / ePub
Transactional Information Systems is the long-awaited, comprehensive work from leading scientists in the transaction processing field. Weikum and Vossen begin with a broad look at the role of transactional technology in today's economic and scientific endeavors, then delve into critical issues faced by all practitioners, presenting today's most effective techniques for controlling concurrent access by multiple clients, recovering from system failures, and coordinating distributed transactions.
The authors emphasize formal models that are easily applied across fields, that promise to remain valid as current technologies evolve, and that lend themselves to generalization and extension in the development of new classes of network-centric, functionally rich applications. This book's purpose and achievement is the presentation of the foundations of transactional systems as well as the practical aspects of the field what will help you meet today's challenges.
* Provides the most advanced coverage of the topic available anywhere--along with the database background required for you to make full use of this material.
* Explores transaction processing both generically as a broadly applicable set of information technology practices and specifically as a group of techniques for meeting the goals of your enterprise.
* Contains information essential to developers of Web-based e-Commerce functionality--and a wide range of more "traditional" applications.
* Details the algorithms underlying core transaction processing functionality.
system environment. Such simplifications are possible because all the necessary steps to cope with concurrency and failures are factored out from the diversity of applications, and are delegated to the generic run-time system of the underlying transactional servers. This clear separation of responsibilities into application-specific functionality and generic run-time services is indeed the main contribution of transactional information systems and the key to their impressive commercial success:
This case implies that the transaction could be processed completely, and no errors whatsoever were discovered while it was processed. If, on the other hand, the program is abnormally terminated before reaching its commit point, the data in the underlying data servers will be left in or automatically brought back to the state in which it was before the transaction started. So, in this latter case, the data appears as if the transaction had never been invoked at all. This holds also for system
Performance: throughput and response time concurrency control component to guarantee the isolation properties of transactions, for both committed and aborted transactions recovery component to guarantee the atomicity and durability of transactions Note that the server may or may not provide explicit support for consistency preservation. One type of server may require the application program to do all consistency checking and maintenance itself with implicit support by means of the rollback
t1 if the latter is well formed, since t1 later reads z. Hence either t2 or t3 violate rule AL4. We mention (without proof ) that the set Gen(AL) has other interesting properties. For example, it has a nonempty intersection with the class COCSR of commit order-preserving histories (as any serial history is in both classes), but is otherwise incomparable with respect to set inclusion with COCSR. Indeed, a slight modification of history s ∗ above in which c 2 is moved to the very end makes s ∗
transactions, further details of which can be found in the references cited at the end of the chapter. Preanalysis locking (PAL) 165 166 CHAPTER FOUR Concurrency Control Algorithms 4.4 Nonlocking Schedulers In this section we present various alternatives to locking schedulers; the protocols discussed next can all guarantee the safety of their output without using locks. Their use in commercial database systems is limited, but they may be suited for distributed systems and can also be used