1 CS3431 – Database Systems I Introduction Instructor: Mohamed Eltabakh

Slides:



Advertisements
Similar presentations
©Silberschatz, Korth and Sudarshan4.1Database System Concepts Lecture-1 Database system,CSE-313, P.B. Dr. M. A. Kashem Associate. Professor. CSE, DUET,
Advertisements

Mani-CS34311 CS3431 – Database Systems I Introduction Instructor: Murali Mani
Adapted from: ©Silberschatz, Korth and Sudarshan1.1Database System Concepts Chapter 1: Fly-over Introduction Purpose of Database Systems View of Data Data.
©Silberschatz, Korth and Sudarshan1.1Database System Concepts Chapter 1: Introduction Purpose of Database Systems View of Data Data Models Data Definition.
BD05/06 Chapter 1: Introduction  Purpose of database systems  Data abstraction levels  Data models  SQL :Data Definition Language and Data Manipulation.
Rundensteiner-CS34311 CS3431 – Database Systems I Introduction Instructor: Elke A. Rundensteiner
Database Management System (DBMS)
Murali Mani CS3431 – Database Systems I Introduction.
Ch1: File Systems and Databases Hachim Haddouti
DATABASE SYSTEM CONCEPTS
On Database Systems.
©Silberschatz, Korth and Sudarshan1.1Database System Concepts Chapter 1: Introduction Purpose of Database Systems View of Data Data Models Data Definition.
©Silberschatz, Korth and Sudarshan1.1Database System Concepts Chapter 1: Introduction n Why Database Systems? n Data Models n Data Definition Language.
©Silberschatz, Korth and Sudarshan1.1Database System Concepts Chapter 1: Introduction Database Management Systems Purpose of Database Systems View of Data.
Dr. Kalpakis CMSC 461, Database Management Systems Introduction.
Introduction to DBMS Purpose of Database Systems View of Data
CS462: Introduction to Database Systems. ©Silberschatz, Korth and Sudarshan1.2Database System Concepts Course Information Instructor  Kyoung-Don (KD)
Database System Concepts, 5th Ed. ©Silberschatz, Korth and Sudarshan See for conditions on re-usewww.db-book.com Chapter 1: Introduction.
Temple University – CIS Dept. CIS616– Principles of Database Systems V. Megalooikonomou Introduction (based on notes by Silberchatz,Korth, and Sudarshan)
ADVANCED DATABASES WITH ORACLE 11g FOR ADDB7311 LEARNING UNIT 1 of 7.
©Silberschatz, Korth and Sudarshan1.1Database System Concepts Lecture 6: Introduction to Database Management Systems Lecturer: Prof. Kazimierz Subieta.
Database System Concepts, 6 th Ed. ©Silberschatz, Korth and Sudarshan See for conditions on re-usewww.db-book.com Chapter 1: Introduction.
1 Introduction to databases concepts CCIS – IS department Level 4.
Database System Concepts, 6 th Ed. ©Silberschatz, Korth and Sudarshan See for conditions on re-usewww.db-book.com Chapter 1: Introduction.
Introduction to Databases
 Introduction Introduction  Purpose of Database SystemsPurpose of Database Systems  Levels of Abstraction Levels of Abstraction  Instances and Schemas.
Introduction. 
Web-Enabled Decision Support Systems
CST203-2 Database Management Systems Lecture 2. One Tier Architecture Eg: In this scenario, a workgroup database is stored in a shared location on a single.
Database Management Systems
Database Organization and Design
Chapter 1 : Introduction §Purpose of Database Systems §View of Data §Data Models §Data Definition Language §Data Manipulation Language §Transaction Management.
©Silberschatz, Korth and Sudarshan1.1Database System Concepts Chapter 1: Introduction Purpose of Database Systems View of Data Data Models Data Definition.
Chapter 1 Introduction Yonsei University 1 st Semester, 2015 Sanghyun Park.
1 Chapter 1 Introduction to Databases Transparencies.
Rundensteiner-CS34311 CS3431 – Database Systems I Introduction Instructor: Elke A. Rundensteiner
Mr.Prasad Sawant, MIT Pune India Introduction to DBMS.
©Silberschatz, Korth and Sudarshan1.1Database System Concepts Chapter 1: Introduction Purpose of Database Systems View of Data Data Models Data Definition.
Chapter 1: Introduction
1 CS462- Database Systems Sang H. Son
ASET 1 Amity School of Engineering & Technology B. Tech. (CSE/IT), III Semester Database Management Systems Jitendra Rajpurohit.
CS3431: C-Term CS3431 – Database Systems I Introduction Instructor: Mohamed Eltabakh
Chapter 1: Introduction. 1.2 Database Management System (DBMS) DBMS contains information about a particular enterprise Collection of interrelated data.
Lecture on Database Management System
Database System Concepts Introduction Purpose of Database Systems View of Data Data Models Data Definition Language Data Manipulation Language Transaction.
Databases Salihu Ibrahim Dasuki (PhD) CSC102 INTRODUCTION TO COMPUTER SCIENCE.
Database Management Systems 3ed, R. Ramakrishnan and J. Gehrke1 Database Management Systems Chapter 1.
©Silberschatz, Korth and Sudarshan 1.1 Database System Concepts قواعد البيانات Data Base قواعد البيانات CCS 402 Mr. Nedal hayajneh E- mail
CSCI-235 Micro-Computers in Science Databases. Database Concepts Data is any unorganized text, graphics, sounds, or videos A database is a collection.
CHAPTER 1: INTRODUCTION Purpose of Database Systems View of Data Data Models Data Definition Language Data Manipulation Language Storage Management Database.
Database System Concepts, 5th Ed. ©Silberschatz, Korth and Sudarshan See for conditions on re-usewww.db-book.com Chapter 1: Introduction.
CS 325 Spring ‘09 Chapter 1 Goals:
Introduction to DBMS Purpose of Database Systems View of Data
Introduction Instructor: Elke A. Rundensteiner
Chapter 1: Introduction
Unit 1: INTRODUCTION Database system, Characteristics Database Users
Introduction Instructor: Mohamed Eltabakh
Instructor: Elke Rundensteiner
Chapter 1: Introduction
Chapter 1: Introduction
Introduction to Database Systems
Chapter 1: Introduction
Introduction to DBMS Purpose of Database Systems View of Data
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 1: Introduction
Introduction Instructor: Mohamed Eltabakh
Terms: Data: Database: Database Management System: INTRODUCTION
Chapter 1: Introduction
Presentation transcript:

1 CS3431 – Database Systems I Introduction Instructor: Mohamed Eltabakh

Today’s Lecture Overview on Database Management Systems Course Logistics 2

What is a Database System? Software platform for managing large amounts of data Managing means: Storing, querying, indexing, and structuring the data Different names refer to the same thing: Database systems Database management systems DBMS 3

What is a Database System? (Cont’d) What’s inside a DBMS Collection of interrelated data (E.g., for a given application) Set of programs to secure and access the data An environment that is both convenient and efficient to use Usually data is too large to fit in computer memory at once Data stored on disk Usually many users want to access this data and do so fast Databases touch all aspects of our lives. We use it without knowing !!! 4

5 Database Applications E-commerce: books, equipment etc. at Amazon Banks -- your valuable $$ and ATM transactions Airlines – manage flights to get you places Universities – manage student enrollment GIS (Maps) – find restaurants closest to WPI Bio-informatics (genome data) Have you ever used a database application? Data is everywhere. To efficiently manage it, we need DBMS ?

Why use DBMS, and not files? Several drawbacks of using file systems Data redundancy and inconsistency Multiple file formats, duplication of information in different files Multiple records formats within the same file No order enforced between fields Difficulty in accessing data Need to write a new program to carry out each new task Integrity problems 6 Account balance >= 0 Student cannot take same course twice ….

Why use DBMS, and not files? (Cont’d) Concurrent access by multiple users Many users need to access/update the data at the same time (concurrent access) Security problems Hard to provide user access to some, but not all, data Recovery from crashes While updating the data the system crashes Maintenance problems Hard to search for or update a field Hard to add new fields 7

8 DBMS Provides Solutions Data consistency even with multiple users Efficient access to the data Data integrity embedded in the DBMS Recovery from crashes, security

9 Basic Terminology Data Model Tools used for describing the 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 (DBMS) Software platform that allows us to create, stores, use, and maintain a database SQL & Data Manipulation Language (DML) Language to manipulate, e.g., update or query, the data

Data Model A collection of tools for describing Data objects Data relationships Data semantics Data constraints Several data models: Relational model Entity-Relationship (ER) data model Object-based data models (Object-oriented) Semi-structured data model (XML) Other older models: Network model Hierarchical model 10 We will learn these two models

Example: ER Model 11 Graphical model for describing entities, attributes, and relationships

Data Schema Captures the relationships between objects (“entities”) in an application Schemas can be represented graphically or textual 12

Query Language (SQL) Language for accessing and manipulating the data organized by the appropriate data model SQL: Structured Query Language 13 SELECT ID, Name FROM Student WHERE address=“320FL”;

Query Language Two classes of languages Procedural – user specifies what data is required and how to get those data Declarative (non-procedural) – user specifies what data is required without specifying how to get those data DBMSs use SQL  14 SELECT ID, Name FROM Student WHERE address=“320FL”;

A Big Picture of What You will Learn 15

16 You will Learn Data Model Relational Model Entity-Relationship (ER) Model Data Schema How to put pieces together to build a schema describing the application Database Build an actual database and manipulate data Database Management System (DBMS) We will use Oracle Query Language SQL Language

Relational Data Model: Overview The most widely used model today It is a tabular representation of the data Main concepts: Relations (Tables), basically a table with rows and columns. Every relation has a schema, which describes the columns, or fields. Field or attribute

18 Example Database : Relational Tabular View of Data in Airline System Flight Passenger flightNostartdestinationmiles 101BOSLAX PVDLAX2900 pNamefreqFlyerIDDoBmilesEarned Mike Mary flightNofreqFlyerIDdate Jan Jan 5 Travel Tabular view of data is called “Relational Model”

Entity-Relationship Model: Overview Models the application as a collection of entities and relationships Represented using Entity-Relationship Diagram (ERD) 19

SQL: Overview SQL: Non-procedural language to access the data inside a database 20 External programs, e.g., in C or Java, typically access the database using: Language extensions to allow embedded SQL ODBC: Open Database Connectivity JDBC: Java Database Connectivity

Logical vs. Physical 21 How this information is stored???

22 Levels of Abstraction View Level --describes how users see the data Logical Level – describes the logical structures used Relational Model ERD model Physical Level -- describes files and indexes Usually hidden from users

23 Levels of Abstraction: Airline Application Example Logical (Conceptual) Level Flight, Passenger, Travel tables Physical Level Flight table stored as a sorted file on the flight number Index on flightNo attribute for Flight relation View Level (External Schema) NoOfPassengers (flightNo, date, numPassengers) Hide employees salary These levels of abstraction lead to “Data Independence” These levels of abstraction lead to “Data Independence”

Data Independence DBMS has the three levels of abstractions Ability to modify one level without affecting the other levels Physical data independence: Physical schema such as indexes can change, but logical schema need not change Protection from changes in physical structure of data Logical data independence: Logical schema can change, but views need not change Protection from changes in logical structure of data

Other Advanced Topics Efficient access Query optimization Concurrency control Recovery control Big Data Analytics >> We will not have time to study these subjects during the course >> It is important to know their existence and what is meant by each component 25

26 Efficient Access Indexing Indexes gives direct access to “necessary” portion of data, as opposed to sequential access in files Directly find this customer without scanning all customers

27 Query Optimization Costing: Estimate expected execution times Query optimization : Generates many alternatives to answer a query Estimates the cost of each alternative Automatically determine and prepare optimal (or near optimal) access plans for getting the data Optimizer = “The Bread and Butter of a DBMS !” SELECT ID, Name FROM Student WHERE address=“320FL”;

28 Concurrency Control 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)

29 Recovery Control If system crashes in middle of transaction, recovery must be provided : Cannot afford to loose data or leave it inconsistent Concepts: Logging of transactions’ actions Ability to redo or undo transactions

Big Data Analytics Large-Scale Data Management Big Data Analytics Data Science and Analytics How to manage very large amounts of data and extract value and knowledge from them 30

Data Explosion 31

32 Who uses databases? End users DB application programmers Database Administrators Database design Security, Authorization Data availability, crash recovery Database tuning (for performance)

33 Summary : Why study DBMS? Need to process large amounts of data efficiently Video, WWW, computer games, geographic information systems (GIS), genome data, digital libraries, etc. Make use of all functionalities provided by DBMSs DB administrators and programmers hold rewarding jobs DB research is one of the most exciting areas in Computer Science !!