E-66
Database Systems
  • Home
  • Lectures
  • Problem Sets
  • Sections
  • Syllabus
  • Schedule
  • Staff
  • Policies
  • Canvas
  • Gradescope
  • Ed Discussion

Suggested Readings (optional)

These readings are completely optional. Unless stated otherwise, they come from our optional textbook:

Database Systems: The Complete Book (2nd edition) by Hector Garcia-Molina, Jeff Ullman, and Jennifer Widom (ISBN 978-0131873254, Pearson Prentice Hall, 2009).

Important

There may be times in which the textbook takes a different approach to a given topic than the one taken in lecture, and you should make sure to follow the approach from lecture on the assignments and exams.

  1. Introduction; ER diagrams and the relational model
    ER diagrams: chapter 4, sections 1-3
    the relational model: chapter 2, sections 1-3
  2. Relational algebra and SQL
    relational algebra: chapter 2, sections 4 and 5
    SQL: chapter 6, sections 1-5
  3. Storage and indexing
    storage basics: chapter 13, sections 5 and 7
    index structures: chapter 14, sections 1-3
  4. Implementing a logical-to-physical mapping
    query processing: chapter 16, sections 1-3
    marshalling and Berkeley DB: see the resources in Problem Set 2
  5. Transactions and concurrency control, part I
    transaction basics: sections 1.2.4, 6.6, and 17.1.3 serializability: chapter 18, sections 1 and 2
    other concurrency-control goals: chapter 19, sections 1-4
    locking: sections 18.3, 18.4.1, 19.1.5
  6. Transactions and concurrency control, part II
    lock upgrades and update locks: sections 18.4.2, 18.4.3, and 18.4.4
    deadlocks: sections 19.2.1, 19.2.2, and 19.2.3
    timestamps: chapter 18, section 8
  7. Semistructured data; XML
    basics: chapter 11, sections 1 and 2
    DTDs: chapter 11, section 3
    XPath and XQuery: chapter 12, sections 1 and 2
  8. Distributed databases and replication
    basics: chapter 20, section 20.1.1 and section 3
    distributed locking: chapter 20, section 6
    parallel operations: sections 20.1.2 and 20.1.3
    map-reduce: chapter 20, section 2
  9. Object-oriented and object-relational databases
    ODL: chapter 4, sections 9 and 10
    object-relational model: chapter 10, sections 3-5
  10. NoSQL
    Sadalage and Fowler, NoSQL Distilled (Addison-Wesley, 2013)
    MongoDB Manual
  11. Recovery and logging
    recovery basics: chapter 17, section 1
    logging: chapter 17, sections 2-4
    logical logging: sections 19.1.7 and 19.1.8
    group commit: section 19.1.6
    two-phase commit: chapter 20, section 5
  12. Performance tuning; wrap-up
    tuning: Dennis E. Shasha, Database Tuning: A Principled Approach (Prentice Hall, 1992)
    self-tuning: Dr. Sullivan’s thesis

Last updated on September 10, 2024.