Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction Instructor: Elke A. Rundensteiner

Similar presentations


Presentation on theme: "Introduction Instructor: Elke A. Rundensteiner"— Presentation transcript:

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

2 What is a Database System?
a large collection of related data usually too large to fit in computer memory at once usually many users want to access this data and do so fast Focus: information and knowledge, rather than computation Rundensteiner-CS3431

3 Database Applications
Have you ever used a database application? E-commerce: books etc at Amazon, B&N 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) – blobs, wikis, etc. Bio-informatics (genome data) ? Data sets increasing in diversity and volume are everywhere !!! Rundensteiner-CS3431

4 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. Rundensteiner-CS3431

5 Basic Terminology Data Model: Data Schema: Database :
A collection of “types” used for describing data 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). Rundensteiner-CS3431

6 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. Rundensteiner-CS3431 5

7 Example Database : Relational
Tabular View of Data: Airline System flightNo start destination miles 101 BOS LAX 3000 102 PVD 2900 Flight pName ffNumber DoB milesEarned Joe 1001 1980 12000 Mary 1002 1981 11000 Passenger flightNo ffNumber date 101 1001 Jan 4 102 1002 Jan 5 FlewIn Tabular view of data is called Relational Model Rundensteiner-CS3431

8 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 Rundensteiner-CS3431

9 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) Rundensteiner-CS3431

10 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. Rundensteiner-CS3431

11 Efficient access Indexing : Costing : Query optimization :
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 !” Rundensteiner-CS3431

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

13 Data Integrity DBMS ensures data is consistent under concurrent access
E.g.: multiple airline staff trying to reserve a seat for different customers. Concepts: Transactions – grouping multiple instructions (reads/writes) into one atomic unit Locks – locking of resources (tables) Rundensteiner-CS3431

14 Recovery from Crashes If system crashes in middle of transaction, recovery must be provided : Cannot afford to loose data Ideas: logging, commit/rollback of transactions Rundensteiner-CS3431

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

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


Download ppt "Introduction Instructor: Elke A. Rundensteiner"

Similar presentations


Ads by Google