CS计算机代考程序代写 algorithm SQL database concurrency data structure information retrieval COMP9315 Course Welcome

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