Presentation is loading. Please wait.

Presentation is loading. Please wait.

Rundensteiner-CS34311 CS3431 – Database Systems I Introduction Instructor: Elke A. Rundensteiner

Similar presentations


Presentation on theme: "Rundensteiner-CS34311 CS3431 – Database Systems I Introduction Instructor: Elke A. Rundensteiner"— Presentation transcript:

1 Rundensteiner-CS34311 CS3431 – Database Systems I Introduction Instructor: Elke A. Rundensteiner rundenst@cs.wpi.edu

2 Rundensteiner-CS34312 What is a Database System? usually too large to fit in computer memory at once Database: a large collection of related data. Focus: information, rather than computation

3 Rundensteiner-CS34313 Database Applications E-commerce: inventory of books, CDs etc at Amazon, B&N etc. Banks -- your valuable $$ and ATM transactions Airlines – manage flights to get you places Universities – manage student enrollment GIS (Maps) – find restaurants closest to WPI WWW (World Wide Web) Bio-informatics (genome data) Have you ever used a database application? Datasets increasing in diversity and volume everywhere !!! ?

4 Rundensteiner-CS34314 Example Database : Relational Tabular View of Data: Airline System Flight Passenger flightNostartdestinationmiles 101BOSLAX3000 102PVDLAX2900 pNameffNumberDoBmilesEarned Joe1001198012000 Mary1002198111000 flightNoffNumberdate 1011001Jan 4 1021002Jan 5 FlewIn Tabular view of data is called Relational Model

5 Rundensteiner-CS34315 Basic Terminology Data Model: A collection of “types” used for describing data Schema: Describes structures for a particular application, using the given model Database : Collection of actual data that conforms to given schema Database Management System : Software that allows us to create, use and maintain a database (conforming to given model).

6 Rundensteiner-CS34316 Example Database : Relational Tabular View of Data: Airline System Flight Passenger flightNostartdestinationmiles 101BOSLAX3000 102PVDLAX2900 pNameffNumberDoBmilesEarned Joe1001198012000 Mary1002198111000 flightNoffNumberdate 1011001Jan 4 1021002Jan 5 FlewIn Tabular view of data is called Relational Model

7 Rundensteiner-CS3431 Relational Data Models The relational model of data The most widely used model today. Main concept: relation, basically a table with rows and columns. Every relation has a schema, which describes the columns, or fields.

8 Rundensteiner-CS34318 Levels of Abstraction External schema (view) -- describes how users see the data Logical schema – describes the logical structures used Physical schema -- describes files and indexes

9 Rundensteiner-CS34319 Levels of Abstraction: Example Logical (Conceptual) Schema: Flight, Passenger, FlewIn tables Physical Schema Flight table stored as a sorted file Index on flightNo attribute for Flight relation Views ( External Schema ) NoOfPassengers (flightNo, date, numPassengers)

10 Rundensteiner-CS343110 Why use DBMS, and not files? Data independence (robustness under change) Efficient access even on huge data sets Reduced application development time Data integrity ensures consistency of data even with multiple users Recovery from crashes, security, etc.

11 Rundensteiner-CS3431 Data Independence Applications insulated from how data is structured and stored. Logical data independence: Logical schema can change, but views need not change Protection from changes in logical structure of data. Physical data independence: Protection from changes in physical structure of data. Physical schema such as indexes can change, but logical schema need not change.

12 Rundensteiner-CS343112 Efficient access Indexing : Indexes gives direct access to “necessary” portion of data, as opposed to sequential access in files. Costing : Estimate expected execution times Query optimization : Automatically determine and prepare optimal access plans for getting to the data Optimizer = “The Bread and Butter of a DBMS !”

13 Rundensteiner-CS343113 Reduced application development time Higher level of data abstraction Queries are written in a high level language tailored for database applications Example : SELECT pname FROM Passengers WHERE flightNo = 101

14 Rundensteiner-CS343114 Data Integrity Concurrent Access, DBMS ensures data is consistent E.g.: multiple airline staff trying to reserve a seat for different customers. Ideas: Transactions – grouping multiple instructions (reads/writes) into one atomic unit Locks – locking of resources (tables)

15 Rundensteiner-CS343115 Recovery from Crashes, Security If system crashes in middle of transaction, recovery must be provided : Cannot afford to loose data Ideas: logging, commit/rollback of transactions Many other useful features : such as security, access control, privileges, support for facilitating administration.

16 Rundensteiner-CS343116 Who use databases? End users DB application programmers Database Administrators Database design Security, Authorization Data availability, crash recovery Database tuning (for performance)

17 Rundensteiner-CS343117 Why study DBMS? Need to process large amounts of data keep increasing Video, WWW, geographic information systems (GIS), genome data, digital libraries DB administrators and programmers hold rewarding jobs. DBMS research is one of the most exciting areas in Computer Science !!

18 Rundensteiner-CS343118 What will we learn in this course? Database Design Representing the application requirements formally in a conceptual model (ER, Entity Relationship Model) Translate an ER schema to relational schema Analyze the ‘goodness’ of relational schema designed using normalization theory. Operations for Relational Model: Relational Algebra (fundamental) SQL: Standard Query Language Database Application Development Stored procedures, views, constraints, etc Brief study of indexes, transactions, logging, security

19 Rundensteiner-CS343119 Textbook First Course in Database Systems, Jeffrey D. Ullman and Jennifer D. Widom, Prentice Hall. ISBN: 0-13-035300-0 Database Systems: The Complete Book; Hector Garcia-Molina, Jeffrey D. Ullman and Jennifer D. Widom; Prentice Hall. ISBN: 0-13-031995-3 Oracle9i Programming: A Primer, (or, 10g) ; Rajshekhar Sunderraman, Addison-Wesley

20 Rundensteiner-CS343120 Course Logistics Web Page: http://web.cs.wpi.edu/~cs3431/b06 Lectures M, T, R, F : (10am-10:50am) regular lectures, discussion of examples, project, H/Ws Grading H/W assignments (3 or 5): 15% Projects (in phases): 30% Exams : mid term + final : 50% Class participation: 5%

21 Rundensteiner-CS343121 Course Management http://www.cs.wpi.edu/~cs3431/b06 + lecture overheads + homework assignments + project due dates on mywpi on mywpi + discussion boards (for questions) + viewing of grades

22 Rundensteiner-CS343122 Contact and Communication Primarily, we will use mywpi Plus, register yourself with majordomo for: cs3431... @cs.wpi.edu

23 Rundensteiner-CS343123 Office Hours Are posted on the course web page. Make use of the office hours – there are there for YOU !!! May schedule additional office hours, if need arises and you guys ask for them !!!

24 Rundensteiner-CS343124 H/Ws and Projects H/Ws due dates announced with assignment Individual effort (to verify you practice the material) Project will be done in multiple phases Team effort. A full cycle from project idea, design, development to final polished project presentation ! Multiple phases to get feedback and pace yourself! Late submissions Marks for late submissions will not count. However we will be happy to grade them, if you would like us to.

25 Rundensteiner-CS343125 Tips for doing well Exams Master the topics Master the topics on time Project Ensure that you are on schedule Teamwork counts Additional investigations can get additional points. More tomorrow.

26 Rundensteiner-CS343126 Photo Time ! Please prepare a sign with your full name, and your “nickname”, if any


Download ppt "Rundensteiner-CS34311 CS3431 – Database Systems I Introduction Instructor: Elke A. Rundensteiner"

Similar presentations


Ads by Google