Presentation is loading. Please wait.

Presentation is loading. Please wait.

ECE 569 Database System EngineeringSpring 2003 ECE 569 Database System Engineering Spring 2003 Yanyong Zhang www.ece.rutgers.edu/~yyzhangwww.ece.rutgers.edu/~yyzhang.

Similar presentations


Presentation on theme: "ECE 569 Database System EngineeringSpring 2003 ECE 569 Database System Engineering Spring 2003 Yanyong Zhang www.ece.rutgers.edu/~yyzhangwww.ece.rutgers.edu/~yyzhang."— Presentation transcript:

1 ECE 569 Database System EngineeringSpring 2003 ECE 569 Database System Engineering Spring 2003 Yanyong Zhang www.ece.rutgers.edu/~yyzhangwww.ece.rutgers.edu/~yyzhang Course URL www.ece.rutgers.edu/~yyzhang/spring03www.ece.rutgers.edu/~yyzhang/spring03

2 ECE 569 Database System EngineeringSpring 2003 About the instructor (Yanyong Zhang)  Dr./Prof. Zhang  Dr./Prof. Yanyong  Yanyong  Office: Core 518  Office hours: TBD (usually before class)  Office number: 5-0608  Email: yyzhang@ece.rutgers.eduyyzhang@ece.rutgers.edu  URL: www.ece.rutgers.edu/~yyzhangwww.ece.rutgers.edu/~yyzhang  Research interests: ● distributed computing ● operating systems ● distributed database

3 ECE 569 Database System EngineeringSpring 2003 Something about the background  What is database? l a very large, integrated collection of data  Query  Transaction l A group of queries which possess the ACID (atomic, consistent, isolated, and durable) property  DBMS (DataBase Management System) l a software package designed to store and manage databases

4 ECE 569 Database System EngineeringSpring 2003 About the course  What will we focus on? l Transaction processing l DBMS design  What will we not focus on? l Relational data model, OO data model, etc l SQL programming  Goal l Understand DBMS design issues l Develop background for research in database area

5 ECE 569 Database System EngineeringSpring 2003 What should you’ve know  Data structure and algorithms  Operations system knowledge  C, Unix  Background in data model and query languages recommended

6 ECE 569 Database System EngineeringSpring 2003 What will you encounter - topics  1. Relational Data Model (2-4)  2. DBMS Design / Implementation (5-11) l a) File organization (5-6) l b) Access methods (7-9) l c) Query processing (10-11)  3. Transaction Processing l a) Transaction Models (12-13) l b) Isolation (14-20) l c) Performance (21-22) l d) B-tree Synchronization (23-24) e) Recovery (25-29)

7 ECE 569 Database System EngineeringSpring 2003 What will you encounter - projects  Projects l Develop a client/server relational DBMS -Query processing / Physical data model / Data dictionary - Concurrency control / Recovery l Work in groups of at most 4. -You may choose groups but I must approve. -At least three members of each group should be strong C programmers. l Projects are difficult and time-consuming. -~10K lines of codes -Use threads and RPC -Code is difficult to debug l Projects are interesting and rewarding.

8 ECE 569 Database System EngineeringSpring 2003 Grading Policy  3 Homework assignments (15%)  Project (45%)  Two exams (20% each)  Course URL: www.ece.rutgers.edu/~yyzhang/spring03 www.ece.rutgers.edu/~yyzhang/spring03

9 ECE 569 Database System EngineeringSpring 2003 Database Literature  Journals l IEEE Transaction on Knowledge and Data Engineering l ACM Transactions on Database Systems l VLDB Journal  Conferences l IEEE Data Engineering Conference l ACM SIGMDO l Very Large Database (VLDB)

10 ECE 569 Database System EngineeringSpring 2003 Time and Location  Core 538 schedule l Tuesday all day l Wednesday after 6 PM l Thursday all day  Part time students please let me know (access to Core, and 5 th floor)

11 ECE 569 Database System EngineeringSpring 2003 Overview  A database management system (DBMS) provides efficient access to large amounts of persistent data l Data models and query languages allow efficient access while hiding complexity from users l Efficient shared access requires concurrency. Transactions provide transparency to this concurrency. Application programs are easier to write. l In many cases the data is valuable. It must be protected from the effects of failure (resiliency) and sabotage (security).

12 ECE 569 Database System EngineeringSpring 2003 Example – medical database  Entities in database, the types and names of their attributes, and relationships between entities. Billed AccountMade To Room# Name Address Balance Patient Payment Amount Date Diagnosed DiseaseNameTreatment From Vital Sign Pulse Blood Time

13 ECE 569 Database System EngineeringSpring 2003  Sample applications l Admit_patient l Make_diagnosis l Record_vital_signs  In relational data model we can express schema with following tables: l patient (name, address, balance_due, room#) l payments (name, amount, date) l vital_signs (name, pulse, bp, time) l diagnosis (patient_name, disease_name) l disease (disease_name, treatment)

14 ECE 569 Database System EngineeringSpring 2003 Levels of Abstractions  Abstraction is used to hide complexity and allow for a separation of concerns (What vs. How). Physical Schema Conceptual Schema View 1 Specialized view of enterprise Complete model of enterprise Records, pointers, indices Subschema definition language Data definition language

15 ECE 569 Database System EngineeringSpring 2003 Examples  Physical Level l Specify indices, e.g., CREATE INDEX room_index ON patient(room#); l Specify performance related characteristics of relations  Conceptual Level l Define tables, specifying data types for each attribute. CR CREATE TABLE patient ( name char(30), address char(100), balance_due number(6,2), room# integer, PRIMARY KEY (name));

16 ECE 569 Database System EngineeringSpring 2003 Examples – cont’d  External Level l Define views for various purposes, e.g., CREATE VIEW doctor-view-diagnosis AS SELECT name, room#, disease_name,treatment FROM patient, diagnosis, diseases WHERE name = patient_name AND diagnosis.disease_name = disease.disease_name;

17 ECE 569 Database System EngineeringSpring 2003 System Architecture  DDL: Data Definition Language  DML: Data Manipulation Language


Download ppt "ECE 569 Database System EngineeringSpring 2003 ECE 569 Database System Engineering Spring 2003 Yanyong Zhang www.ece.rutgers.edu/~yyzhangwww.ece.rutgers.edu/~yyzhang."

Similar presentations


Ads by Google