Overview of Data Management

Similar documents
Overview of Data Management

Introduction to Databases CS348

What is Data? ANSI definition: Volatile vs. persistent data. Data. Our concern is primarily with persistent data

What is Data? Volatile vs. persistent data Our concern is primarily with persistent data

DATABASE MANAGEMENT SYSTEMS. UNIT I Introduction to Database Systems

Chapter 1 Introduction

Database Fundamentals Chapter 1

Introduction Database Concepts

Chapter 1: Introduction

Chapter 1: Introduction

Chapter 1: Introduction. Chapter 1: Introduction

The functions performed by a typical DBMS are the following:

Chapter 1: Introduction

Chapter 1: Introduction

CS425 Fall 2016 Boris Glavic Chapter 1: Introduction

Databases 1. Daniel POP

Outline. Database Management Systems (DBMS) Database Management and Organization. IT420: Database Management and Organization

Quick Facts about the course. CS 2550 / Spring 2006 Principles of Database Systems. Administrative. What is a Database Management System?

UNIT I. Introduction

CS 4604: Introduction to Database Management Systems. B. Aditya Prakash Lecture #1: Introduction

Introduction. Example Databases

Introduction to Data Management. Lecture #2 (Big Picture, Cont.)

CSE2004 Database Management Systems

Databases and Database Management Systems

Chapter 1 Database System Concepts and Architecture. Nguyen Thi Ai Thao

Database System Concepts and Architecture

Introduction to Database Systems

CMPSCI 645 Database Design & Implementation

Database Principle. Zhuo Wang Spring

Database Systems Overview. Truong Tuan Anh CSE-HCMUT

Course: Database Management Systems. Lê Thị Bảo Thu

; Spring 2008 Prof. Sang-goo Lee (14:30pm: Mon & Wed: Room ) ADVANCED DATABASES

Introduction: Database Concepts Slides by: Ms. Shree Jaswal

Database System Concepts and Architecture. Copyright 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe Slide 2-1

Course Introduction & Foundational Concepts

Data, Databases, and DBMSs

Database Management Systems MIT Introduction By S. Sabraz Nawaz

Introduction. Who wants to study databases?

B.H.GARDI COLLEGE OF MASTER OF COMPUTER APPLICATION. Ch. 1 :- Introduction Database Management System - 1

Database Management System. Fundamental Database Concepts

D.Hemavathi & R.Venkatalakshmi, Assistant Professor, SRM University, Kattankulathur

Introduction to Data Management. Lecture #2 (Big Picture, Cont.) Instructor: Chen Li

Course Logistics & Chapter 1 Introduction

Introduction to Databases

DATABASES AND DATABASE USERS CHAPTER 1

An Introduction to Databases and Database Management Systems.

Database Technology Introduction. Heiko Paulheim

Database Management Systems (CPTR 312)

Topics. History. Architecture. MongoDB, Mongoose - RDBMS - SQL. - NoSQL

John Edgar 2

Course Introduction & History of Database Systems

Review for Exam 1 CS474 (Norton)

Chapter 11 Database Concepts

Upon completion of this Unit, the students will be introduced to the following

CAS CS 460/660 Introduction to Database Systems. Fall

DISCUSSION 5min 2/24/2009. DTD to relational schema. Inlining. Basic inlining

Course Introduction & Foundational Concepts

Part I What are Databases?

SE352b: Roadmap. SE352b Software Engineering Design Tools. W5: Database Technology. Database Technology

CISC 3140 (CIS 20.2) Design & Implementation of Software Application II

5-1McGraw-Hill/Irwin. Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved.

Introduction to Data Management. Lecture #2 Intro II & Data Models I

CSC 355 Database Systems

Database Systems CSE 414

DATABASTEKNIK - 1DL116

MaanavaN.Com DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING QUESTION BANK

Can you name one application that does not need any data? Can you name one application that does not need organized data?

Introduction to Databases

CMPT 354: Database System I. Lecture 1. Course Introduction

Databases and Database Systems

CSE 3241: Database Systems I Databases Introduction (Ch. 1-2) Jeremy Morris

DATABASE DESIGN I - 1DL300

The Relational Model

BIS Database Management Systems.

MIS Database Systems.

Database Management Systems. Chapter 1

16/06/56. Databases. Databases. Databases The McGraw-Hill Companies, Inc. All rights reserved.

Introduction to SET08104

Databases The McGraw-Hill Companies, Inc. All rights reserved.

Introduction to Data Management CSE 344

Introduction to Data Management CSE 344

Why are you here? Introduction. Course roadmap. Course goals. What do you want from a DBMS? What is a database system? Aren t databases just

Techno India Batanagar Computer Science and Engineering. Model Questions. Subject Name: Database Management System Subject Code: CS 601

IST 210: Organization of Data

Introduction to CS 4604

A bit of Databases history

CS 245: Principles of Data-Intensive Systems. Instructor: Matei Zaharia cs245.stanford.edu

Department of Information Technology B.E/B.Tech : CSE/IT Regulation: 2013 Sub. Code / Sub. Name : CS6302 Database Management Systems

5/17/17. Announcements. Review: Transactions. Outline. Review: TXNs in SQL. Review: ACID. Database Systems CSE 414.

For many companies, information systems cost 40 percent of overall costs.

Relational Database Systems Part 01. Karine Reis Ferreira

Introduction and Overview

Fundamentals of Information Systems, Seventh Edition

Introduction to Data Management CSE 344

DATABASE CONCEPTS. Dr. Awad Khalil Computer Science & Engineering Department AUC

DB Basic Concepts. Rab Nawaz Jadoon DCS. Assistant Professor. Department of Computer Science. COMSATS IIT, Abbottabad Pakistan

Database Systems CSE 414

Outline. Definitions History Basic concepts of DBMS Data Models Relational database Normalization

Introduction to Database Concepts. Department of Computer Science Northern Illinois University January 2018

Transcription:

Overview of Data Management Grant Weddell Cheriton School of Computer Science University of Waterloo CS 348 Introduction to Database Management Spring 2016 CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 1 / 22

Course Logistics Webpage Text Book www.cs.uwaterloo.ca/gweddell/cs348 Database Management Systems (3rd Edition). Raghu Ramakrishnan and Johannes Gehrke. McGraw Hill, 2003. CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 2 / 22

Course Content Why do we use databases? Functionality provided by a Database Management System Database Models: Relational, Network, OO How do we use a DBMS? Relational model, foundational query languages SQL Application programming Transactions and concurrency How do we design a database? Entity-Relationship (ER) modeling Dependencies and constraints Redundancy and normal forms How do we administer a DBMS? Security and authorization Physical design/tuning CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 3 / 22

What is a Database? Definition (Database) A large and persistent collection of information organized in a way that facilitates efficient retrieval and modification. Examples: a file cabinet a library system a personnel management system Definition (Database Management System (DBMS)) A program (or set of programs) that manages details related to storage and access for a database. CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 4 / 22

Application of Databases Original More recent inventory control payroll banking and financial systems reservation systems computer aided design (CAD) software development (CASE, SDE/SSE) telecommunication systems e-commerce dynamic/personalized web content CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 5 / 22

Application of Databases (cont d) Common Circumstances: There is lots of data (mass storage) Data is formatted Requirements: persistence and reliability efficient and concurrent access Issues: many files with different structure shared files or replicated data need to exchange data (translation programs) Note The data maintained by the system are much more important and valuable than the system itself. CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 6 / 22

Brief History of Data Management: Ancient 2000 BC: Sumerian Records 350 BC: Syllogisms (Aristotle) 296 BC: Library of Alexandria 1879: Modern Logic (Frege) 1884: U.S. Census (Hollerith) 1941: Model Theory (Tarski) CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 7 / 22

Brief History of Data Management: 1950s First generation 50 s and 60 s batch processing sequential files and tape input on punched cards Second generation (60 s) disk enabled random access files new access methods (ISAM, hash files) mostly batch with some interactivity independent applications with separate files growing applications base CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 8 / 22

Brief History of Data Management: 1960s (cont d) As the application base grows, we end up with many shared files a multitude of file structures a need to exchange data among applications This causes a variety of problems redundancy: multiple copies inconsistency: independent updates inaccuracy: concurrent updates incompatibility: multiple formats insecurity: proliferation inauditability: poor chain of responsibility inflexibility: changes are difficult to apply CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 9 / 22

Brief History of Data Management: 1960s (cont d) Hierarchical data model IBM s Information Management System (IMS): concurrent access only allows 1:N parent-child relationships (i.e. a tree) hierarchy can be exploited for efficiency queries navigate up and down trees one record at a time data access language embedded in business processing language difficult to express some queries Network data model Charles Bachman s Integrated Data Store (IDS) model standardized by Conference On DAta SYstems Languages (CODASYL) data organized as collections of sets of records separation of physical data representation from users view of data pointers between records represent relationships set types encoded as lists queries navigate between records still one record at a time CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 10 / 22

Database Management System Idea Abstracts common functions and creates a uniform well defined interface for applications accessing data. 1 Data Model all data stored in a well defined way 2 Access control only authorized people get to see/modify it 3 Concurrency control multiple concurrent applications access data 4 Database recovery nothing gets accidentally lost 5 Database maintenance CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 11 / 22

Brief History of Data Management: 1970s Edgar Codd proposes relational data model (1970) firm mathematical foundation! declarative queries Charles Bachman wins ACM Turing award (1973) The Programmer as Navigator Peter Chen proposes E-R model (1976) Transaction concepts (Jim Gray and others) IBM s System R and UC Berkeley s Ingres systems demonstrate feasibility of relational DBMS (late 1970s) CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 12 / 22

Three Level Schema Architecture Definition (Schema) A schema is a description of the data interface to the database (i.e., how the data is organized). 1 External schema (view): what the application programs and user see. May differ for different users of the same database. 2 Conceptual schema: description of the logical structure of all data in the database. 3 Physical schema: description of physical aspects (selection of files, devices, storage algorithms, etc.) Definition (Instance) A database instance is a database (real data) that conforms to a given schema. CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 13 / 22

Three-level Schema Architecture (cont.) Users/ Applications External Schema External view External view External view Conceptual Schema Conceptual view Internal Schema DBMS Internal view Database CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 14 / 22

Data Independence Idea Applications do not access data directly but, rather through an abstract data model provided by the DBMS. Two kinds of data independence: Physical: applications immune to changes in storage structures Logical: applications immune to changes in data organization Note One of the most important reasons to use a DBMS! CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 15 / 22

Interfacing to the DBMS Data Definition Language (DDL): for specifying schemas may have different DDLs for external schema, conceptual schema, internal schema information is stored in the data dictionary, or catalog Data Manipulation Language (DML): for specifying queries and updates navigational (procedural) non-navigational (declarative) CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 16 / 22

Types of Database Users End user: Accesses the database indirectly through forms or other query-generating applications, or Generates ad-hoc queries using the DML. Application developer: Designs and implements applications that access the database. Database administrator (DBA): Manages conceptual schema. Assists with application view integration. Monitors and tunes DBMS performance. Defines internal schema. Loads and reformats database. Is responsible for security and reliability. CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 17 / 22

Transactions When multiple applications access the same data, undesirable results occur. Example: withdraw(ac,1000) Bal := getbal(ac) if (Bal>1000) <give-money> setbal(ac,bal-1000) withdraw(ac,500) Bal := getbal(ac) if (Bal>500) <give-money> setbal(ac,bal-500) Idea Every application may think it is the sole application accessing the data. The DBMS should guarantee correct execution. CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 18 / 22

Transactions (cont d) Definition (Transaction) An application-specified atomic and durable unit of work. Properties of transactions ensured by the DBMS: Atomic: a transaction occurs entirely, or not at all Consistency: Isolated: Durable: each transaction preserves the consistency of the database concurrent transactions do not interfere with each other once completed, a transaction s changes are permanent CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 19 / 22

Brief History of Data Management: 1980s Development of commercial relational technology IBM DB2, Oracle, Informix, Sybase Edgar Codd wins ACM Turing award (1981) SQL standardization efforts through ANSI and ISO Object-oriented DBMSs persistent objects object id s, methods, inheritence navigational interface reminicent of hierarchical model CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 20 / 22

Brief History of Data Management: 1990s-Present Continued expansion of SQL and system capabilities New application areas: the Internet On-Line Analytic Processing (OLAP) data warehousing embedded systems multimedia XML data streams Jim Gray wins ACM Turing award (1998) Relational DBMSs incorporate objects (late 1990s) CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 21 / 22

Summary Using a DBMS to manage data helps: to remove common code from applications to provide uniform access to data to guarantee data integrity to manage concurrent access to protect against system failure to set access policies for data CS 348 (Intro to DB Mgmt) Overview of Data Management Spring 2016 22 / 22