Download Principles of Distributed Database Systems

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

SQL wikipedia , lookup

Microsoft SQL Server wikipedia , lookup

Entity–attribute–value model wikipedia , lookup

Extensible Storage Engine wikipedia , lookup

Global serializability wikipedia , lookup

Open Database Connectivity wikipedia , lookup

Commitment ordering wikipedia , lookup

Microsoft Jet Database Engine wikipedia , lookup

Serializability wikipedia , lookup

Functional Database Model wikipedia , lookup

Database wikipedia , lookup

Versant Object Database wikipedia , lookup

Clusterpoint wikipedia , lookup

Relational model wikipedia , lookup

Database model wikipedia , lookup

Concurrency control wikipedia , lookup

Transcript
Principles of Distributed Database Systems
一、Course Information、Methodology and Arrangement
1.Course Information
The objectives of this course are to introduce the fundamental concepts and issues
of distributed database systems and to provide insight into related research problems.
This course is for graduate students majoring in Computer Application Technology
and Management Science. Distributed databases - various contemporary issues
including data model partitioning, fragmentation, replication issues, query
optimization, concurrency control, restart and recovery, distributed database design,
client-server and distributed database applications. Building distributed systems with
Oracle DBMS. Particular attention will be paid to detailed consideration of distributed
database management issues.
2.Methodology
This course combines classroom teaching and practicing on computer together.
With the classroom teaching, students learn and understand the concepts; With the
practicing, they really have ability to know how to design distributed database
systems to solve complex problems.
3.Arrangement
Credit: 2
Period: 2 hours/week, total 36 hours
Classroom teaching: 28 hours
Practicing on computer: 8 hours
二、Course structure、Assignments and Exams
1. Course structure
CH 1. INTRODUCTION
In this chapter we define the fundamental concepts and set the framework for
discussing distributed database. We start by examining distributed systems in general
in order to clarify the role of database technology within distributed data processing,
and then move on to topics that are more directly related to DDBS
1.1 DISTRIBUTED DATA PROCESSING
l.2 WHAT IS A DISTRIBUTED DATABASE SYSTEM
1.3 PROMISES OF DDBSs
1.4 COMPLICATING FACTORS
1.5 PROBLEM AREAS
1.6 BIBLIOGRAPHIC NOTES
CH 2. OVERVIEW OF RELATIONAL DBMS
In this chapter we review fundamental relational database concepts. The aim of
this chapter is to define the terminology and framework used in subsequent chapters,
not to provide substantial background on database systems.
2.1 RELATIONAL DATABASE CONCEPTS
2.2 NORMALIZATION
2.3 INTEGMTY RULES
2.4 RELATIONAL DATA LANGUAGES
2.5 RELATIONAL DBMS
2.6 BIBLJOCRAPHIC NOTES
CH 3. REVIEW OF COMPUTER NETWORKS
In this chapter we discuss the issues related to computer networks and
concentrate on the concepts an issues that are important for distributed database
system.
3.1 DATA COMMUNICATION CONCEPTS
3.2 TYPES OF NETWORKS
3.3 PROTOCOL STANDARDS
3.4 BROADBAND NETWORKS
3.5 WIRELESS NETWORKS
3.6 INTERNET
3.7 CONCLUDING REMARKS
3.8 BIBLIOGRAPHIC NOTES
CH 4. DISTRIBUTED DBMS ARCHITECTURE
In this chapter we start by looking at the DBMS standardization efforts and
present a well-known reference architecture for centralized DBMSs, and study of the
design space for distributed DBMS implementation.
4.1 DBMS STANDARDIZATION
4.2 ARCHITECTURAL MODELS FOR DISTRIBUTED DBMSs
4.3 DISTRIBUTED DBMS ARCHITECTURE
4.4 GLOBAL DIRECTORY ISSUES
4.5 CONCLUSION
4.6 BIBLIOGRAPHIC NOTES
CH 5. DISTRIBUTED DATABASE DESIGN
In this chapter we introduce alternative design strategies, Distributed design
issues, Fragmentation and Data allocation.
5.l ALTERNATIVE DESIGN STRATEGIES
5.2 DISTRIBUTION DESIGN ISSUES
5.3 FRAGMENTATION
5.4 ALLOCATION
5.5 CONCLUSION
5.6 BIBLIOGRAPHIC NOTES
5.7 EXERCISES
CH 6. SEMANTIC DATA CONTROL
First we introduce view management, then security control . Finally, semantic
integrity control is presented.
6.1 VIEW MANAGEMENT
6.2 DATA SECURIT
6.3 SEMANTIC INTEGRITY CONTROL
6.4 CONCLUSION
6.5 BIBLIOGRAPHIC NOTES
6.6 EXERCISES
CH 7. OVERVIEW OF QUERY PROCESSING
We give an overview of query processing in distributed DBMSs, leaving the
details of the important aspects of distributed query processing to the next two
chapters. First we illustrate the query processing problem. Then define precisely the
objectives of query processing algorithms and discuss the complexity of relational
algebra operations. Finally we provide a characterization of query processors based on
their implementation choices and introduce the different layers of query processing
site and communication between sites.
7.l QUERY PROCESSING PROBLEM
7.2 OBJECTIVES OF QUERY PROCESSING
7.3 COMPLEXITY OF RELATIONAL ALGEBRA OPERATJONS
7.4 CHARACTERIZATION OF QUERY PROCESSORS
7.5 LAYERS OF QUERY PROCESSING
7.6 CONCLUSION
7.7 BIBLIOGRAPHIC NOTES
CH 8. QUERY DECOMPOSITION AND DATA LOCALIZATION
In this chapter we present the techniques for query decomposition and data
localization. Query decomposition maps a distributed calculus query into an algebraic
query on global relations. Data localization takes as input the decomposed query on
global relations and applies data distribution information to query in order to localize
its data.
8.1. QUERY DECOMPOSITION
8.2 LOCALIZATION OF DISTRIBUTED DATA
8.3 CONCLUSION
8.4 BIBLIOGRAPHIC NOTES
8.5 EXERCISES
CH 9. OPTIMIZATION OF DISTRIBUTED QUERIES
This chapter organized as follows. First we introduce the main components of
query optimization and describe centralized query optimization. Then we discuss the
major optimization issue, which deals with the join ordering in fragment queries.
Finally, illustrate the use of the techniques and concepts in three basic distributed
query optimization algorithms.
9.1 QUERY OPTIMIZATION
9.2 CENTRALIZED QUERY OPTIMIZATION
9.3 JOIN ORDERING IN FRAGMENT QUERIES
9.4 DISTRJBUTED QUERY OPTIMIZATION ALGORITHMS
9.5 CONCLUSION
9.6 BIBLIOGRAPHIC NOTES
9.7 EXERCISES
CH 10. INTRODUCTION TO TRANSACTION MANAGEMENT
Now, we will consider what happens if two queries attempt to update the same
data item, or if a system failure occurs during execution of a query. So we introduce
the concept of a transaction which can solve the former problem. And we discuss the
properties of transaction and what the implications of each these properties are in
terms of transaction management. Later, we present various types of transactions an
revisit the architectural model defined in chapter 4 and indicate the modifications that
are necessary to support transaction management.
10.1 DEFINITION OF A TRANSACTION
10.2 PROPERTIES OF TRANSACTIONS
l0.3 TYPES OF TRANSACTIONS
l0.4 ARCHITECTURE REVISITED
l0.5 CONCLUSION
10.6 BIBLIOGRAPHIC NOTES
CH 11. DISTRIBUTED CONCURRENCY CONTROL
We make one major assumption: the distributed system is fully reliable and does
not experience any failures. It permits us to delineate the issues related to the
management of concurrency from those related to the operation of reliable distributed
system.
11.1 SERIALIZABILITY THEORY
l1.2 TAXONOMY OF CONCURRENCY CONTROL MECHANISMS
11.3 LOCKING-BASED CONCURRENCY CONTROL ALGORITHMS
11.4 TIMESTAMP-BASED CONCURRENCY CONTROL ALGORITHMS
1l.5 OPTIMISTIC CONCURRENCY CONTROL ALGORITHMS
11.6 DEADLOCK MANAGEMENT
l1.7 RELAXED CONCURRENCY CONTROL
11.8 CONCLUSION
11.9 BIBLIOGRAPHIC NOTES
11.10 ''EXERCISES
CH 12. DISTRIBUTED DBMS RELIABILITY
The purpose of this chapter is to discuss the reliability features of a distributed
DBMS. Two specific aspects of reliability protocols that need to be discussed in
relation to these properties are the commit and the recovery protocols. In that sense, in
this chapter we relax the major assumption of chapter 11.
12.1 RELIABILITY CONCEPTS AND MEASURES
12.2 FAILURES AND FAULT TOLERANCE IN DISTRIBUTED SYSTEMS
12.3 FAILURES IN DISTRIBUTED DBMS
12.4 LOCAL RELIABILITY PROTOCOLS
12.5 DISTRIBUTED RELIABILITY PROTOCOLS
12.6 DEALING WITH SITE FAILURES
12.7 NETWORK PARTITIONING
12.8 ARCHITECTURAL CONSIDERATIONS
12.9 CONCLUSION
12.10 BIBLIOGRAPHIC NOTES
12.11 EXERCISES
CH 13. PARALLEL DATABASE SYSTEMS
Research on parallel database systems has been initiated in the context of the
relational model, which explains why all commercial products are SQL-based. In this
chapter, we present the parallel database system approach as a solution to
high-performance and high-availability distributed database management. The
objectives are to exhibit the advantages and disadvantages of the various parallel
system architectures and to present the generic implementation techniques.
13.1 DATABASE SERVERS
13.2 PARALLEL ARCHITECTURES
13.3 PARALLEL DBMS TECHNIQUES
13.4 PARALLEL EXECUTION PROBLEMS
13.5 PARALLEL EXECUTION FOR HIERARCHICAL ARCHITECTURE
l3.6 CONCLUSION
13.7 BIBLIOGRAPHIC NOTES
13.8 EXERCISES
CH 14. DISTRIBUTED OBJECT DATABASE MANAGEMENT SYSTEMS
In this chapter, we relax another one of the fundamental assumptions we made in
chapter 1 —namely that the system implements the relational data model. Relational
databases have proven to be very successful in supporting business data processing
application. However, there is now an important class of applications, commonly
referred to as “advanced database applications”, that exhibit pressing needs for
database management.
14.1 FUNDAMENTAL OBJECT CONCEPTS AND MODELS
l4.2 OBJECT DISTRIBUTION DESIGN
l4.3 ARCHITECTURAL ISSUES
14.4 OBJECT MANAGEMENT
14.5 DISTRIBUTED OBJECT STORAGE
l4.6 OBJECT QUERY PROCESSING
l4.7 TRANSACTION MANAGEMENT
14.8 CONCLUSION
l4.9 BIBLIOGRAPHIC NOTES
14.l0 EXERCISES
CH 15. DATABASE INTEROPERABILITY
Three of the topics addressed in this chapter—global conceptual schema design,
query processing, and transaction management—are the traditional database issues.
The presentation of these topics will be based on the related conceptions that were
developed for distributed DBMSs. Finally, we discuss the role of object-orientation in
database interoperability.
15.1 DATABASE INTEGRATION
15.2 QUERY PROCESSING
15.3 TRANSACTION MANAGEMENT
15.4 OBJECT ORIENTATION AND INTEROPERABILITY
15.5 CONCLUSION
l5.6 BIBLIOGRAPHIC NOTES
15.7 EXERCISES
CH 16. CURRENT ISSUES
In this chapter, we discuss four topics that are of growing important in distributed
database management. The topics are data warehousing, the WWW and its effect on
distributed data management, push-based technologies for data dissemination, and
mobile database management.
16.1 DATA DELIVERY ALTERNATIVES
16.2 DATA WAREHOUSING
l6.3 WORLD WIDE WEB
16.4 PUSH-BASED TECHNOLOGIES
16.5 MOBILE DATABASES
16.6 BIBLIOGRAPHIC NOTES
2.Assignments and Exams
write a read reporting
design a database system
final examination(closed book)
10%
20%
70%
三、Text Books
1.Required:
Principles of Distributed Database Systems, Second Edition,Tsinghua University
Press.
2.Recommended:
S. Ceri and G. Pelagatti, Distributed Databases Principles and Systems, McGraw Hill Book
Company.
DATABASE MANAGEMENT SYSTEMS, Second Edition,Tsinghua University
Press.
执笔人:凌云