Database Systems and Concepts

Title: Database System and Concepts Code: CSCI 3030U

Instructor: Jarek Szlichta, Jaroslaw [dot] Szlichta [at] uoit [dot] ca

Office hours: Wednesdays 16.30pm-17.30pm

TAs: Guilherme Damasio (Guilherme.FetterDamasio [at] uoit [dot] ca), Riley Weagant (riley.weagant [at] uoit [dot] ca)

TA Office hours: UA 4029, Tuesdays, hours TBA

Description: This course studies Database Systems and the related theories and concepts. Students will be introduced to the classical relational data model and the theory of relational data normalization. We will also cover modern data models such as the semi-structured, and unstructured data models.

We cover a range of data query languages including SQL, XQuery and text search based query methods. Practical issues such as performance, security and application programming interfaces to host languages are discussed. We also discuss the intimate connection between database engines and modern computer systems such as the WWW, mobile devices and computer networks.

Policies: Refer to following link. Refer to UOIT Faculty of Science academic policies

Course outline:

  1. Relational Data
    • Relational data modeling
    • ER diagrams
    • Constraints and data normalization
  2. SQL and Database Programming and Administration
    • SQL Database programming in Java and Python
    • Data driven Web programming Indexes and performance tuning
    • Security and access control
  3. Semistructured Data
    • XML and DTD Xquery
  4. Unstructured Data
    • Text data and full text search
    • NoSQL databases
  5. Advanced topics
    • Data mining algorithms
    • Keyword search and search engines
    • Embedded databases: from the Web to the mobile phone

Required reading: Database Systems, The Complete Book, Hector Garcia-Molina, Jeffrey Ullman and Jennifer Widom,


Lecture Notes (always check newest version of the slides):

I. Introduction PDF

II. Data Modelling PDF

III. Relational Algebra PDF

IV. E/R PDF

V. SQL

VI. More SQL

VII. Constraints

VIII. Transactions, Views and Indexes

IX. Design Workshop

X. Authorization

XI. SQL Libraries

XII. Functional Dependencies

XIII. Keyword Search over Big Data

XIV. Data Integration

XVI. XML

XV. OLAP

XVI. Discovery of Order Dependencies

XVII. Closure


 Labs:

Labs will start in the week 17th-21st of Sept.


Announcements:

Any student who misses an examination (or lab) without a valid medical reason and documentation will receive zero for that examination/lab. Those with medical documentation will either be given a makeup exam/tutorial or will have the weight of the examination added to the final exam.

Midterm:  TBA of October (Database Design Modelling) and TBA of October  (Applications: rest of the material, SQL etc.) BRING YOUR LAPTOP TO BOTH!

Submit report for Project part I by TBA October  (by midnight).

Submit report for Project part II by TBA of Dec (by midnight).

Final Midterm:  TBA BRING YOUR LAPTOP