Presentation is loading. Please wait.

Presentation is loading. Please wait.

DBMS 2001Notes 1: Introduction1 Principles of Database Management Systems (Tietokannanhallintajärjestelmät) Pekka Kilpeläinen Fall 2001.

Similar presentations


Presentation on theme: "DBMS 2001Notes 1: Introduction1 Principles of Database Management Systems (Tietokannanhallintajärjestelmät) Pekka Kilpeläinen Fall 2001."— Presentation transcript:

1 DBMS 2001Notes 1: Introduction1 Principles of Database Management Systems (Tietokannanhallintajärjestelmät) Pekka Kilpeläinen Fall 2001

2 DBMS 2001Notes 1: Introduction2 Credits Based on Stanford CS 245 lecture notes by original authors Hector Garcia- Molina, Jeff Ullman and Jennifer Widom Responsibility of any errors due to modifications belongs to Pekka Kilpeläinen

3 DBMS 2001Notes 1: Introduction3 Isn’t Implementing a Database System Simple? Relations Statements Results

4 DBMS 2001Notes 1: Introduction4 Introducing the Database Management System The latest from Megatron Labs Incorporates latest relational technology UNIX/Linux compatible

5 DBMS 2001Notes 1: Introduction5 Megatron 3000 Implementation Details First sign non-disclosure agreement

6 DBMS 2001Notes 1: Introduction6 Megatron 3000 Implementation Details Relations stored in files (ASCII) e.g., relation R(A,B,C) is in /usr/db/R Smith # 123 # CS Jones # 522 # EE......

7 DBMS 2001Notes 1: Introduction7 Megatron 3000 Implementation Details Schema file (ASCII) in /usr/db/schema : R1 # A # INT # B # STR … R2 # C # STR # A # INT …... relations/ tables domains/types attributes/columns

8 DBMS 2001Notes 1: Introduction8 Megatron 3000 Sample Sessions % MEGATRON3000 Welcome to MEGATRON 3000! &... quit %

9 DBMS 2001Notes 1: Introduction9 Megatron 3000 Sample Sessions & select * from R ; Relation R A B C Smith 123 CS Jones 522 EE... & columns/attributes rows/tuples

10 DBMS 2001Notes 1: Introduction10 Megatron 3000 Sample Sessions & select A,B from R,S where R.B = S.B and S.C > 100; A B Smith 123 Jones 522 &

11 DBMS 2001Notes 1: Introduction11 Megatron 3000 Sample Sessions & select * from R | LPR ; & Result sent to LPR (printer).

12 DBMS 2001Notes 1: Introduction12 Megatron 3000 Sample Sessions & select * from R where R.A < 100 | T ; & New relation T created.

13 DBMS 2001Notes 1: Introduction13 Megatron 3000 To execute “ select * from R where condition ”: (1) Read dictionary to get attributes of R (2) Check validity of condition (3) Display attributes of R as the header (4) Read file R ; for each line: (a) Check condition (b) If TRUE, display

14 DBMS 2001Notes 1: Introduction14 Megatron 3000 To execute “ select * from R where condition | T ”: (1) Process select as before (2) Write results to new file T (3) Append new line to usr/db/schema

15 DBMS 2001Notes 1: Introduction15 Megatron 3000 To execute “ select A,B from R,S where condition ”: (1) Read dictionary to get attributes of R and S (2) Read file R: for each line r: (a) Read file S: for each line s: (i) Create join tuple r&s (ii) Check condition (iii) If TRUE, display r&s[A,B]

16 DBMS 2001Notes 1: Introduction16 What’s wrong with the Megatron 3000 DBMS? No GUI

17 DBMS 2001Notes 1: Introduction17 What’s wrong with the Megatron 3000 DBMS? Tuple layout on disk E.g.,- Change a string from ‘Cat’ to ‘Cats’ and we have to rewrite the end of the file - Updates are expensive - ASCII storage is expensive; E.g., MAXINT = 2 31 -1=2147483647 takes 4 B; string “2147483647” takes 10 B

18 DBMS 2001Notes 1: Introduction18 What’s wrong with the Megatron 3000 DBMS? Search expensive; no indexes e.g.,- Cannot find tuples with given key quickly - Always have to read the full relation

19 DBMS 2001Notes 1: Introduction19 What’s wrong with the Megatron 3000 DBMS? Brute force query processing e.g., select * from R,S where R.A = S.A and S.B > 1000 - Do selection using S.B > 1000 first? - More efficient join?

20 DBMS 2001Notes 1: Introduction20 What’s wrong with the Megatron 3000 DBMS? No concurrency control: –simultaneously working processes (transactions) could cause inconsistent database state

21 DBMS 2001Notes 1: Introduction21 What’s wrong with the Megatron 3000 DBMS? No reliability In case of error, say, power failure - Can lose data - Can leave operations half done

22 DBMS 2001Notes 1: Introduction22 What’s wrong with the Megatron 3000 DBMS? No security –File system security is coarse –Unable to restrict access, say, to some fields of relations

23 DBMS 2001Notes 1: Introduction23 What’s wrong with the Megatron 3000 DBMS? No application program interface (API) e.g.,How can a payroll program get at the data?

24 DBMS 2001Notes 1: Introduction24 Course Overview Physical data storage Blocks on disks, records in blocks, fields in records Indexing & Hashing B-Trees, hashing,… Query Processing Methods to execute SQL queries efficiently Crash Recovery Failures, stable storage, logging policies,...

25 DBMS 2001Notes 1: Introduction25 Course Overview Concurrency Control Correctness, serializability, locks,… Information integration –(if time permits)

26 DBMS 2001Notes 1: Introduction26 Simplified DBMS structure Query processor User/ Application Transaction processor Storage manager Buffers Permanent storage Indexes User DataSystem Data

27 DBMS 2001Notes 1: Introduction27 Why study DBMS implementation techniques? Computer scientists’ core knowledge Techniques applicable in implementing DBMS-like systems Understanding of DBMS internals necessary for database administrators NB: This course is not about designing DB- based applications or about using some specific database systems

28 DBMS 2001Notes 1: Introduction28 Administration Course homepage: http://www.cs.uku.fi/~kilpelai/DBMS01/ –assignments, announcements, notes Lecturer: Pekka.Kilpelainen@cs.uku.fi Assistant: Tarja.Lohioja@cs.uku.fi

29 DBMS 2001Notes 1: Introduction29 Details LECTURES: Oct. 29 - Dec. 17, Microteknia MT2 TEXTBOOK: Garcia-Molina, Ullman, Widom; "DATABASE SYSTEM IMPLEMENTATION" ASSIGNMENTS: Seven written homework assignments; solutions discussed in exercise sessions. No programming. GRADING: (32*Exam/MaxExam + 12*HomeWork/MaxHomeWork - 8)/3 WEB SITE: Assignments & notes will be posted on our Web site at http://www.cs.uku.fi/~kilpelai/DBMS01 Plase check it periodically for last minute announcements.

30 DBMS 2001Notes 1: Introduction30 Reading assignment Refresh your memory about basics of the relational model and SQL –from your earlier course notes –from some textbook –E.g. Garcia-Molina, Ullman & Widom, pp. 14-20


Download ppt "DBMS 2001Notes 1: Introduction1 Principles of Database Management Systems (Tietokannanhallintajärjestelmät) Pekka Kilpeläinen Fall 2001."

Similar presentations


Ads by Google