1 / 17

CS3431 – Database Systems I

CS3431 – Database Systems I. Introduction Instructor: Elke A. Rundensteiner rundenst@cs.wpi.edu. What is a Database System?. Database: a large collection of related data. usually too large to fit in computer memory at once. Focus: information, rather than computation. ?.

columbia
Download Presentation

CS3431 – Database Systems I

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. What is a Database System? • Database: • a large collection of related data usually too large to fit in computer memory at once Focus: information, 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) Datasets increasing in diversity and volume everywhere !!! Rundensteiner-CS3431

  4. Example Database : Relational Tabular View of Data: Airline System Flight Passenger FlewIn • Tabular view of data is called Relational Model Rundensteiner-CS3431

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

  6. Example Database : Relational Tabular View of Data: Airline System Flight Passenger FlewIn Rundensteiner-CS3431

  7. 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

  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. 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

  11. 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

  12. 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 !” Rundensteiner-CS3431

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

  14. 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

  15. 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

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

  17. 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

More Related