Foothill CollegeApproved Course Outlines

Physical Sciences, Mathematics & Engineering Division
4 hours lecture, 3 hours laboratory.5 Units

Total Quarter Learning Hours: 84 (Total of All Lecture, Lecture/Lab, and Lab hours X 12)
 Lecture Hours: 4 Lab Hours: 3 Lecture/Lab:
 Note: If Lab hours are specified, see item 10. Lab Content below.

Repeatability -
Statement: Not Repeatable.

Status -
 Course Status: ActiveGrading: Letter Grade with P/NP option
 Degree Status: ApplicableCredit Status: Credit
 Degree or Certificate Requirement: AS Degree
 GE Status: Non-GE

Articulation Office Information -
 Transferability: CSUValidation: 11/13/13; 11/16/13

1. Description -
An introduction to distributed data management including distributed database design, implementation techniques including concurrency control, query processing and optimization, data replication, integration and peer-to-peer systems. Distributed database solutions are also presented, including data management systems for cloud computing.
Prerequisite: None
Co-requisite: None
Advisory: C S 31A or equivalent.

2. Course Objectives -
The student will be able to:
  1. Design a distributed database
  2. Design implementation techniques for transactions and concurrency control
  3. Design query processing and optimization strategies.
  4. Design data replication and integration plans
  5. Design a schema mapping for a peer-to-peer system.
  6. Evaluate database management solutions for distributed databases including solutions for cloud applications
3. Special Facilities and/or Equipment -
  1. A website or course management system with an assignment posting component (through which all lab assignments are to be submitted) and a forum component where students can discuss course material and receive help from the instructor). This applies to all sections, including on-campus (i.e., face-to- face) offerings.
  2. When taught via Foothill Global Access on the Internet, the college will provide a fully functional and maintained course management system through which the instructor and students can interact.
  3. When taught via Foothill Global Access on the Internet, students must have currently existing e-mail accounts and ongoing access to computers with internet capabilities.

4. Course Content (Body of knowledge) -
  1. Distributed Database Design.
    1. What is a distributed database system?
  2. Promises and complications of distribution
  3. Design issues
  4. Architecture
  5. Top-Down Design Process
  6. Transaction Implementation Techniques
    1. Definition of a transaction
    2. Properties and types of transactions
  7. Architecture revisited for transaction management
  8. Concurrency Control
  9. Serializability Theory
  10. Locking-based concurrency control mechanisms
    1. Timestamp-based concurrency control mechanisms
    2. Optimistic concurrency control
  11. Deadlock Management
  12. Query Processing and Optimization
    1. Issues in multi-database query processing
    2. Multi-database query processing architecture
    3. Query optimization and execution
    4. Timestamp-based concurrency control mechanisms
    5. Optimistic concurrency control
    6. Deadlock Management
  13. Query Processing and Optimization
    1. Issues in multi-database query processing
    2. Multi-database query processing architecture
    3. Query optimization and execution
  14. Data Replication
    1. What is a replicated database?
    2. Consistency of replicated databases.
    3. Update management strategies
    4. Replication protocols
  15. Data Integration
    1. Bottom-up design methodology
    2. Schema matching
    3. Schema integration
    4. Schema mapping
  16. Peer-to-peer Systems
    1. Infrastructure
    2. Querying over P2P systems
  17. Distributed database solutions
    1. Hadoop
    2. Map-Reduce & Pig
    3. Publish/Subscribe Systems
  18. Data Management in the cloud
  19. Cloud architectures
  20. Data management systems for cloud computing
    1. BigTable
    2. Map-Reduce
    3. PNUTS
5. Repeatability - Moved to header area.
6. Methods of Evaluation -
  1. Exams and quizzes
  2. Distributed database design assignments
  3. Project including implementation design for a distributed database for a real- world scenario
7. Representative Text(s) -
  • Tamer Ozsu, Patrick Valduriez. Principles of Distributed Database Systems. Edition: 3rd. Publisher: Springer. Year: 2011. ISBN: 1441988335.

  • 8. Disciplines -
    Computer Science
    9. Method of Instruction -
    1. Lectures
    2. On-line labs (including sections meeting face-to-face/on campus) consisting of:
      1. An assignment web-page located on a college-hosted course management system or other department-approved Internet environment. Here, the students will review the specification of each assignment and submit their completed lab work.
      2. A discussion webpage located on a college hosted course management system or other department-approved Internet environment. Here, students can request assistance from the instructor and interact publically with other class members.
      3. Detailed review of assignment that includes model solutions and specific comments on the student submissions.
      4. In person or on-line discussion, which engages students and instructor in an ongoing dialog, pertaining to all aspects of database management systems.
    3. When course is taught fully on-line:
      1. Instructor-authored lecture materials, handouts, syllabus, assignments, tests, and other relevant course material will be delivered through a college hosted course management system or other department-approved Internet environment.
    10. Lab Content -
    1. Create a distributed database design given predefined set of requirements
    2. Evaluate transaction implementation techniques including the appropriate transaction locking given a set of business constraints
    3. Fill in gaps or inconsistencies in a set of concurrency control rules for an existing distributed database design.
    4. Evaluate a query processing and optimization plan for an existing distributed database design.
    5. Complete a data replication plan given a partial plan
    6. Prepare a schema mapping for a given incomplete data integration plan.
    7. Evaluate a given schema mapping for a Peer-to-peer System.
    8. Recommend one open source solution given a real-world scenario.
    9. Compare and contrast two data management systems for cloud computing.
    11. Honors Description - No longer used. Integrated into main description section.
    12. Types and/or Examples of Required Reading, Writing and Outside of Class Assignments -
    1. Reading:
      1. Textbook assigned reading averaging 30 pages per week.
      2. Reading on-line resources as directed by instructor though links pertinent to databases.
      3. Reading library and reference material directed by instructor through course handouts.
    2. Writing:
      1. Technical prose documentation, that supports and describes the database-driven web application assignments that are submitted for grades. The document would include the following aspects of the database application.
      2. A description of the web application including functional and data requirements.
      3. A description of the database including data type, valid data ranges, constraints and keys.
      4. A help page for users of the web application. This may be an FAQ or user manual style help page.
    13. Need/Justification -
    This course is a restricted support course for the AS Degree in Computer Science.

    Course status: Active
    Last updated: 2014-06-19 12:48:39

    Foothill CollegeApproved Course Outlines