COMP9315 Course Welcome
>>
COMP9315 Course Welcome
Lecturer
Services
Course Goals
Pre-requisites
Learning/Teaching
Rough Schedule
Textbooks
Prac Work
Assignments
Quizzes
Exam
Assessment Summary
Forum Etiquette
General Etiquette
Course Outline
COMP9315 21T1 ♢ Course Welcome ♢ [0/19]
∧ >>
COMP9315 21T1
DBMS Implementation
( Data structures and algorithms inside relational DBMSs )
Lecturer: John Shepherd
Web Site: http://www.cse.unsw.edu.au/~cs9315/
(If WebCMS unavailable, use http://www.cse.unsw.edu.au/~cs9315/21T1/)
COMP9315 21T1 ♢ Course Welcome ♢ [1/19]
<< ∧ >>
❖ Lecturer
Name: John Shepherd
Office: K17-410 (turn right from lift)
Email: cs9315@cse.unsw.edu.au
Online: Tuesday 2-4, Thursday 2-4
Research:
Information Extraction/Integration
Information Retrieval/Web Search
e-Learning Technologies
Multimedia Databases
Query Processing
COMP9315 21T1 ♢ Course Welcome ♢ [2/19]
<< ∧ >>
❖ Services
Email cs9315@cse.unsw.edu.au
Technical issues (e.g. problems compiling PostgreSQL)
Detailed assignment questions (shared-screen debugging)
Special consideration:
https://student.unsw.edu.au/special-consideration
Educational Adjustments:
https://student.unsw.edu.au/els
COMP9315 21T1 ♢ Course Welcome ♢ [3/19]
<< ∧ >>
❖ Course Goals
Introduce you to:
architecture of relational DBMSs (e.g. PostgreSQL)
algorithms/data-structures for data-intensive computing
representation of relational database objects
representation of relational operators (sel,proj,join)
techniques for processing SQL queries
techniques for managing concurrent transactions
concepts in distributed and non-relational databases
Develop skills in:
analysing the performance of data-intensive algorithms
the use of C to implement data-intensive algorithms
COMP9315 21T1 ♢ Course Welcome ♢ [4/19]
<< ∧ >>
❖ Pre-requisites
We assume that you are already familiar with
the C language and programming in C
(e.g. completed ≥ 1 programming course in C)
developing applications on RDBMSs
(SQL, [relational algebra] e.g. an intro DB course)
basic ideas about file organisation and file manipulation
(Unix open, close, lseek, read, write, flock)
sorting algorithms, data structures for searching
(sorting, trees, hashing e.g. a data structures course)
If you don’t know this material very well, don’t take this course
PostgreSQL, Assignments and Exam all involve C programming.
COMP9315 21T1 ♢ Course Welcome ♢ [5/19]
<< ∧ >>
❖ Learning/Teaching
What’s available for you:
Textbooks: describe some syllabus topics in detail
Course Notes: describe syllabus topics in some detail
Content videos: short videos covering one topic (4-5 / week)
Slides: from Content Videos
Readings: research papers on selected topics
Online: live Q&A and problem-solving sessions (like a tute)
The onus is on you to make use of this material.
Online sessions are on Bb Collaborate (via Moodle), Tue 2-4, Thu 2-4
COMP9315 21T1 ♢ Course Welcome ♢ [6/19]
<< ∧ >>
❖ Learning/Teaching (cont)
Things that you need to do:
Exercises: tutorial-like questions
Prac work: lab-class-like exercises
Assignments: large/important practical exercises
On-line quizzes: for self-assessment
Dependencies:
Exercises → Exam (theory part)
Prac work → Assignments → Exam (prac part)
There are no tute/lab classes; use Forum, Email, Consults
debugging is best done in person (can see full context)
COMP9315 21T1 ♢ Course Welcome ♢ [7/19]
<< ∧ >>
❖ Rough Schedule
Week 01 relational algebra, catalogs
Week 02 storage: disks, buffers, pages, tuples
Week 03 RA ops: scan, sort, projection
Week 04 selection: heaps, hashing, indexes
Week 05 selection: N-d matching, similarity
Week 06 no new content, no online sessions
Week 07 joins: naive, sort-merge, hash join
Week 08 query processing, optimisation
Week 09 transactions: concurrency, recovery
Week 10 database trends (guest lecture)
COMP9315 21T1 ♢ Course Welcome ♢ [8/19]
<< ∧ >>
❖ Textbooks
No official text book; several are suitable …
Silberschatz, Korth, Sudarshan
“Database System Concepts”
Elmasri, Navathe
“Database Systems: Models, languages, design …”
Kifer, Bernstein, Lewis
“Database Systems: An algorithmic-oriented approach”
Garcia-Molina, Ullman, Widom
“Database Systems: The Complete Book”
but not all cover all topics in detail
COMP9315 21T1 ♢ Course Welcome ♢ [9/19]
<< ∧ >>
❖ Prac Work
In this course, we use PostgreSQL v12 (compulsory)
Prac Work requires you to compile PostgreSQL from source code
instructions explain how to do this on Linux at CSE
also works easily on Linux and MacOS at home
PostgreSQL docs describe how to compile for Windows
Make sure you do the first Prac Exercise when it becomes available.
Sort out any problems ASAP (preferably at a consultation).
COMP9315 21T1 ♢ Course Welcome ♢ [10/19]
<< ∧ >>
❖ Prac Work (cont)
PostgreSQL is a large software system:
> 2000 source code files in the core engine/clients
> 1,500,000 lines of C code in the core
You won’t be required to understand all of it 🙂
You will need to learn to navigate this code effectively.
Will discuss relevant parts in lectures to help with this.
PostgreSQL books?
tend to add little to the manual, and cost a lot
COMP9315 21T1 ♢ Course Welcome ♢ [11/19]
<< ∧ >>
❖ Assignments
Schedule of assignment work:
Ass Description Due Marks
1 Storage Management Week 5 15%
2 Query Processing Week 9 20%
Assignments will be done individually
Assignments will require up-front code-reading (see Pracs).
Test cases available before submsission (extra tests after submission)
Ultimately, submission is via CSE’s give system.
Late penalties apply; plagiarism checking will be used
COMP9315 21T1 ♢ Course Welcome ♢ [12/19]
<< ∧ >>
❖ Quizzes
Over the course of the semester …
five online quizzes
taken in your own time (but there are deadlines)
each quiz is worth a small number of marks
Quizzes are primarily a review tool to check progress.
But they contribute 15% of your overall mark for the course.
COMP9315 21T1 ♢ Course Welcome ♢ [13/19]
<< ∧ >>
❖ Exam
Three-hour** exam in the May exam period.
Exam is NOT held in CSE Labs; you do it at home (via ssh or vlab)
The exam is totally open-book (“open-web”).
Things that we can’t reasonably test in the exam:
writing large programs, running major experiments
Everything else is potentially examinable.
Contains: descriptive questions, analysis, small programming exercises.
Exam contributes 50% of the overall mark for this course.
** 3-hours worth of work; 4-hours allowed to complete
COMP9315 21T1 ♢ Course Welcome ♢ [14/19]
<< ∧ >>
❖ Exam (cont)
If you cannot attend the final exam …
because of documented illness/misadventure
then you will be offered a Supplementary Exam.
You get one chance at passing the exam
unsw’s new fit-to-sit rule applies
Exam hurdle = 20/50 (which is only 40%)
COMP9315 21T1 ♢ Course Welcome ♢ [15/19]
<< ∧ >>
❖ Assessment Summary
Your final mark/grade is computed according to the following:
ass1 = mark for assignment 1 (out of 15)
ass2 = mark for assignment 2 (out of 20)
quiz = mark for on-line quizzes (out of 15)
exam = mark for final exam (out of 50)
okExam = exam > 20/50 (after scaling)
mark = ass1 + ass2 + quiz + exam
grade = HD|DN|CR|PS, if mark ≥ 50 && okExam
= FL, if mark < 50 && okExam
= UF, if !okExam
COMP9315 21T1 ♢ Course Welcome ♢ [16/19]
<< ∧ >>
❖ Forum Etiquette
Webcms3 has a contextual forum
posts form part of a comment thread on resource pages
Before posting: check that your query is not already answered
main forum page has a search function
single search keywords work best
To receive notification of posts
each resource with Comments has a bookmark icon
toggle it to dark to be notified of new posts on that resource
COMP9315 21T1 ♢ Course Welcome ♢ [17/19]
<< ∧ >>
❖ General Etiquette
The course website is a workplace platform
make all communication professional and respectful
Any 9315-related discussion on external platforms
is treated by UNSW the same as the course website
Summary: work hard and be nice to each other.
COMP9315 21T1 ♢ Course Welcome ♢ [18/19]
<< ∧ ❖ Course Outline All of the above is described in detail in the Course Outline. Read it. It forms a contract between you and me on how this course will run. Additional resources: The Nucleus, in the Library Forms for various requests: unsw.to/webforms Student Counselling: student.unsw.edu.au/counselling COMP9315 21T1 ♢ Course Welcome ♢ [19/19] Produced: 13 Feb 2021