Database Systems

Hardcover
from $0.00

Author: Hector Garcia-Molina

ISBN-10: 0131873253

ISBN-13: 9780131873254

Category: Database Administration & Management

Database Systems: The Complete Book is ideal for Database Systems and Database Design and Application courses offered at the junior, senior and graduate levels in Computer Science departments. A basic understanding of algebraic expressions and laws, logic, basic data structure, OOP concepts, and programming environments is implied.\ Written by well-known computer scientists, this introduction to database systems offers a comprehensive approach, focusing on database design, database use, and...

Search in google:

This introduction to database systems covers both object-oriented and object-relational design. The first half of the book provides in-depth coverage of databases from the point of view of the database designer, user, and application programmer, with material on the latest database standards SQL-1999, SQL/PSM, SQL/CLI, JDBC, ODL, and XML. The second half of the book looks at databases from the perspective of the DBMS implementor, focusing on management. Principal techniques are covered, with ample information on query optimization. Advanced topics include multidimensional and bitmap indexes, distributed transactions, and information integration techniques. Previous sophomore-level courses are required in data structures and software systems. The authors teach computer science at Stanford University. Annotation c. Book News, Inc., Portland, OR (booknews.com)

At Stanford, we are on the quarter system, and as a result, our introductory database instruction is divided into two courses. The first, CS145, is designed for students who will use database systems but not necessarily take a job implementing a DBMS. It is a prerequisite for CS245, which is the introduction to DBMS implementation. Students wishing to go further in the database field then take CS345 (theory), CS346 (DBMS implementation project), and CS347 (transaction processing and distributed databases).\ Starting in 1997, we published a pair of books. <I>A First Course in Database Systems</I> was designed for CS145, and <I>Database System Implementation</I> was for CS245 and parts of CS346. Because many schools are on the semester system or combine the two kinds of database instruction into one introductory course, we felt that there was a need to produce the two books as a single volume. At the same time, the evolution of database systems has made a number of new topics imperative for a modern course. Thus, we have added, mostly to the application-programming area, topics such as object-relational data, SQL/PSM (stored programs), SQL/CLI (the emerging standard for the C/SQL interface), and JDBC (the same for Java/SQL).\ Use of the Book\ We recommend that two quarters be devoted to the material in this book. If you follow the Stanford approach, you would cover the first ten chapters in the first quarter and the last ten in the second quarter. Should you wish to cover the material in a single semester, then there will have to be some omitted portions. In general, we suggest that Chapters 2-7, 11-13, and 17-18 should be givenhighest priority, but there are pieces from each of these chapters that can be skipped.\ If, as we do in CS145, you give students a substantial database-application design and implementation project, then you may have to reorder the material somewhat, so that SQL instruction occurs earlier in the Book. You may wish to defer material such as dependencies, although students need normalization for design.\ Prerequisites\ We have used the book at the "mezzanine" level, in courses taken both by undergraduates and beginning graduate students. The formal prerequisites for the courses are Sophomore-level treatments of: (1) Data structures, algorithms, and discrete math, and (2) Software systems, software engineering, and programming languages. Of this material, it is important that students have at least a rudimentary understanding of such topics as: algebraic expressions and laws, logic, basic data structures such as search trees and graphs, object-oriented programming concepts, and programming environments. However, we believe that adequate background is surely acquired by the end of the Junior year in a. typical computer science program.\ Exercises\ The book contains extensive exercises, with some for almost every section. We indicate harder exercises or parts of exercises with an exclamation point. The hardest exercises have a double exclamation point.\ Some of the exercises or parts are marked with a star. For these exercises, we shall endeavor to maintain solutions accessible through the book's web page. These solutions are publicly available and should be used for self-testing. Note that in a few cases, one exercise B asks for modification or adaptation of your solution to another exercise A. If certain parts of A have solutions, then you should expect the corresponding parts of B to have solutions as well.\ Support on the World Wide Web\ Here are solutions to starred exercises, errata as we learn of them, and backup materials. We are making available the notes for each offering of CS145 and CS245 as we teach them, including homeworks, projects and exams.

1 The worlds of database systems 1I Relational database modeling 152 The relational model of data 173 Design theory for relational databases 674 High-level database models 125II Relational database programming 2035 Algebraic and logical query languages 2056 The database language SQL 2437 Constrains and triggers 3118 Views and indexes 3419 SQL in a server environment 36910 Advanced topics in relational databases 425III Modeling and programming for semistructured data 48111 The Semistructured-data model 48312 Programming languages for XML 517IV Database system implementation 55513 Secondary storage management 55714 Index structures 61915 Query execution 70116 The query compiler 75917 Coping with system failures 84318 Concurrency control 88319 More about transaction management 95320 Parallel and distributed databases 985V Other issues in management of massive data 103521 Information integration 103722 Data mining 109323 Database systems and the internet 1141Index 1183