* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Principles of Distributed Database Systems
Survey
Document related concepts
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
Versant Object Database wikipedia , lookup
Clusterpoint wikipedia , lookup
Relational model 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. 执笔人:凌云