Download COL362/632: Introduction to Database Systems

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

SQL wikipedia , lookup

Microsoft SQL Server wikipedia , lookup

Oracle Database wikipedia , lookup

IMDb wikipedia , lookup

Entity–attribute–value model wikipedia , lookup

Extensible Storage Engine wikipedia , lookup

Open Database Connectivity wikipedia , lookup

Microsoft Jet Database Engine wikipedia , lookup

Concurrency control wikipedia , lookup

Database wikipedia , lookup

Relational model wikipedia , lookup

ContactPoint wikipedia , lookup

Clusterpoint wikipedia , lookup

Database model wikipedia , lookup

Transcript
COL362/632: Introduction to Database
Systems
Maya Ramanath
TAs
•
•
•
•
•
Ajay Kumar
Madhulika Mohanty
Saurabh Nakra
Tanuma Patra
Neha Sengupta
What this course is about (1/2)
Database Management Systems
What is it ?
How to use it ?
What is the theory behind it ?
We will also study different kinds of DBMSs.
What this course is about (2/2)
• Textbooks
– Garcia-Molina, Ullman and Widom
– Silberschatz, Korth and Sudarshan
• Additional reading material (conference/journal papers, mainly)
How you will be evaluated (1/2)
1.
2.
3.
4.
Assignments (2) – 5% + 10%
Course projects (2) – 15% + 20%
Minor exams (2) – 15% each
Major exam – 20%
How you will be evaluated (2/2)
• Assignments – first assignment in groups of 2, second assignment
individually.
• Projects – groups of at most 2.
You are allowed to discuss assignments with others, provided you
document this. The actual work has to be your own.
Cheating and plagiarism
• Those who cheat once will be awarded negative marks.
– For example, if you cheat on your project then it is -20%
• Those who cheat twice will be awarded ‘F’ grade and referred
to the disciplinary committee of the institute.
Attendance policy
• For those who attend 90% of the classes and above, they will
be awarded 2% bonus marks.
– This has the potential to boost you up one grade.
Is this course hard?
• Those who want to pass
– Need at least 40% overall
• Those who want to get an ‘A’ grade
– Need at least 80%, but that may not be sufficient
• For the rest
– No decisions can be made now
• For auditing the course: an equivalent of B- grade or above is
required
Above and beyond the course
• LaTeX for everything
– Templates will be put up on the course website
• Web services
– Required for course project
Course Project – 1
You will build a complete end-to-end, web-based database
application
This means
– DBMS at the backend
– Browser is the frontend
All teams have to demo their project in person and answer
questions
Course Project – 2
You will add a new data type into an existing code-base of a
DBMS and enable its processing
This means
– You will read Java code
– You will implement new features inside this code-base
We will use automated testing for grading this project.
Contacting me
• Use Piazza!!
• If it’s crucial, send me mail
– Subject heading: COL362/632: XXX
• Only if absolutely necessary, send a mail to schedule an
appointment at least 1 day earlier
COURSE OVERVIEW
Database Management System
• Large amounts of data, persisting “forever”
– Think “database”, think “disk”
• Physical and logical independence
– Declarative languages for data manipulation
• Operations on the data
– Creating a database
– Insert, delete, modify, retrieve data
• Guarantees
What kind of data?
• In principle, any kind of data, including video, audio, spatial,
text, etc
• “Structured” data
– Crisp units of data – (short) strings, numbers, dates, etc.
– Student database, course database, tourism information, etc.
Database
4/9/2011
CSN110
Getting to know your data
• What is the data (analyze the requirements)?
• How to store it logically ?
– Data models (ER and relational models)
– Schema and data
“Each book has multiple authors, and each author has multiple
books?”
Getting to know your queries
• Declarative query language (SQL)
“I want the list of authors who have written at least 200 books”
Getting to know your system
• Is there anything you can do to make your queries run faster?
– Indexes, materialized views
• What if the database system gets corrupted/ crashes?
– Transaction management (ACID properties)
• What if my dog eats my…no, deletes my database?
– Security, Recovery
Terminology
Terms
DBMS, Database System, Database
management system
Database
Query, query language, declarative vs.
procedural, SQL
Transactions
Indexes, views, triggers
Special Topics
• Database issues for managing different kinds of data
– Text, Spatial, XML, Probabilistic, etc.
• We will probably start these by late March