COMP3311 Course Overview

COMP3311 22T3 ♢ Overview ♢ [0/26]

COMP3311 Database Systems

[Diagram:Pics/intro/pgsql.jpg]

Lecturer: John Shepherd   (cs3311@cse.unsw.edu.au)
Web Site: http://webcms3.cse.unsw.edu.au/COMP3311/22T3/
or   http://www.cse.unsw.edu.au/~cs3311/

(If Webcms3 is unavailable, try http://www.cse.unsw.edu.au/~cs3311/22T3/)

COMP3311 22T3 ♢ Overview ♢ [1/26]
❖ Why Study Databases?

Every significant computer application involves Large Data.

This needs to be:

Green stuff handled by databases;   blue by networks.

Challenges in building effective databases: efficiency, security, scalability, maintainability, availability, integration, new media types (e.g., music), ...

COMP3311 22T3 ♢ Overview ♢ [2/26]
❖ Databases: Important Themes

The field of databases deals with:

COMP3311 22T3 ♢ Overview ♢ [3/26]
❖ What is Data? What is a Database?

According to the Elmasri/Navathe textbook ...

COMP3311 22T3 ♢ Overview ♢ [4/26]
❖ Studying Databases in CSE

COMP3311 introduces foundations & technology of databases


After COMP3311 you can go on to study ...

COMP3311 22T3 ♢ Overview ♢ [5/26]
❖ Syllabus Overview

Core syllabus ...


The brown stuff is not covered in tutes/pracs and is not examinable
COMP3311 22T3 ♢ Overview ♢ [6/26]
❖ Syllabus Overview (cont)

More syllabus ...


Blue and green stuff is covered only briefly, and is not examinable

To learn more about the green stuff, take COMP9313, ...

To learn more about the blue stuff, take COMP9315, ...

COMP3311 22T3 ♢ Overview ♢ [7/26]
❖ Your Background

We assume that you ...


You might have acquired this background in
If you don't know Python, look at some online tutorials soon.

e.g. https://www.python.org/about/gettingstarted/

COMP3311 22T3 ♢ Overview ♢ [8/26]
❖ Teaching/Learning

Stuff that is available for you:

COMP3311 22T3 ♢ Overview ♢ [9/26]
❖ Teaching/Learning (cont)

On the course website, you can:

URL: https://webcms3.cse.unsw.edu.au/COMP3311/22T3/

(If Webcms3 is unavailable, try http://www.cse.unsw.edu.au/~cs3311/22T3/)

COMP3311 22T3 ♢ Overview ♢ [10/26]
❖ Lectures

2-hour live lectures on Monday 12-2, Tuesday 2-4

Lectures will be recorded but not live-streamed

Different lecture enrolments

Note: Ritchie Th holds ~200 students, course has ~600 students
COMP3311 22T3 ♢ Overview ♢ [11/26]
❖ Assignments

Two assignments, which are critical for learning

  1. SQL/PLpgSQL, 15%, due end week 5, beer database
  2. Python/SQL/psycopg2, 20%, due end week 9, movie database
All assignments are done individually, and ...
COMP3311 22T3 ♢ Overview ♢ [12/26]
❖ Quizzes

Six quizzes, each worth 4 marks

COMP3311 22T3 ♢ Overview ♢ [13/26]
❖ Quizzes (cont)

Marking

If you have special consideration for a quiz
COMP3311 22T3 ♢ Overview ♢ [14/26]
❖ Exam

The Final Exam includes questions on ...

In-lab, closed-book exam exam during exam period

Offshore students will sit invigilated exam offshore

Sample exam will be available on the course website in Week 10

COMP3311 22T3 ♢ Overview ♢ [15/26]
❖ Supplementary Assessment Policy

Everyone gets exactly one chance to pass the Exam

If you attempt the Exam

All Special Consideration requests: Supplementary Exams are held ... (maybe) in mid-January!
COMP3311 22T3 ♢ Overview ♢ [16/26]
❖ Assessment Summary

Your final mark/grade will be determined as follows:

quizzes = mark for on-line quizzes   (out of 15)
ass1    = mark for assignment 1      (out of 15)
ass2    = mark for assignment 2      (out of 20)
exam    = mark for final exam        (out of 50)
okExam  = exam >= 20                 (after scaling)

mark    = ass1 + ass2 + quizzes + exam

grade   = HD|DN|CR|PS  if mark >= 50 && okExam
        = FL           if mark <  50 && okExam
        = UF           if !okExam

COMP3311 22T3 ♢ Overview ♢ [17/26]
❖ Textbook (options)

Earlier editions of texts are ok
COMP3311 22T3 ♢ Overview ♢ [18/26]
❖ Database Management Systems

Two example DBMSs for prac work:

Comments on using a specific DBMS:
** Unless it seriously violates SQL standards ... I mean you, MySQL
COMP3311 22T3 ♢ Overview ♢ [19/26]
❖ Further Reading Material

The on-line documentation and manuals provided with:

Some comments on technology books: Aside: once you understand the concepts, the documentation is sufficient
COMP3311 22T3 ♢ Overview ♢ [20/26]
❖ Software

Software versions that we'll be running this semester (TBC):

If you install them at home: Alternative to installing at home: Details on setting up a PostgreSQL server are in the first Prac Exercise.
COMP3311 22T3 ♢ Overview ♢ [21/26]
❖ Software (cont)

How to access the d2 server

On the d2 server you have The actual hostname of the d2 server is nw-syd-vxdb2

More details on how to set up PostgreSQL in first Prac Exercise

COMP3311 22T3 ♢ Overview ♢ [22/26]
❖ Overview of the Databases Field


[Diagram:Pics/intro/overview.png]

COMP3311 22T3 ♢ Overview ♢ [23/26]
❖ Database Application Development

A variation on standard software engineering process:

  1. analyse application requirements
  2. develop a data model to meet these requirements
  3. check data model for redundancy (using relational theory)
  4. implement the data model as relational schema
  5. define operations (transactions) on this model
  6. implement operations via SQL and procedural PLs
  7. construct a program interface to these operations
  8. monitor performance and "tune" the schema/operations
At some point, populate the database (may be via interface)

During the course, we consider these in the order 2, 4, 6, 7, 3

COMP3311 22T3 ♢ Overview ♢ [24/26]
❖ Database System Architecture

The typical environment for a modern DBMS is:

[Diagram:Pics/intro/dbms-arch.png]

SQL queries and results travel along the clientserver links

COMP3311 22T3 ♢ Overview ♢ [25/26]
❖ Database System Architecture (cont)


SQLite is not a client-server system:


[Diagram:Pics/intro/dbms-arch2.png]


Although it does have an API for use from programming languages.

COMP3311 22T3 ♢ Overview ♢ [26/26]


Produced: 11 Sep 2022