Database Management. Peter Wood. Introduction. Lecture plan. Peter Wood. Web:

Similar documents
Introduction to Databases

Databases. DSIC. Academic Year

CSE 233. Database System Overview

Introduction. Introduction: Database management system. Introduction: DBS concepts & architecture. Introduction: DBS versus File system

Introduction: Database management system

What is a database? COSC 304 Introduction to Database Systems. Database Introduction. Example Problem. Databases in the Real-World

Database Systems Introduction Dr P Sreenivasa Kumar

Basic Concepts of Database Systems

DATABASE MANAGEMENT SYSTEMS. Question Bank:

CS2Bh: Current Technologies. Introduction to XML and Relational Databases. The Relational Model. The relational model

IT2305 Database Systems I (Compulsory)

City University of Hong Kong. Information on a Course offered by Department of Computer Science with effect from Semester A in 2014 / 2015

Instructor: Michael J. May Semester 1 of The course meets 9:00am 11:00am on Sundays. The Targil for the course is 12:00pm 2:00pm on Sundays.

CS 525 Advanced Database Organization - Spring 2013 Mon + Wed 3:15-4:30 PM, Room: Wishnick Hall 113

In This Lecture. Security and Integrity. Database Security. DBMS Security Support. Privileges in SQL. Permissions and Privilege.

IT2304: Database Systems 1 (DBS 1)

TIM 50 - Business Information Systems

THE OPEN UNIVERSITY OF TANZANIA FACULTY OF SCIENCE TECHNOLOGY AND ENVIRONMENTAL STUDIES BACHELOR OF SIENCE IN INFORMATION AND COMMUNICATION TECHNOLOGY

COURSE NAME: Database Management. TOPIC: Database Design LECTURE 3. The Database System Life Cycle (DBLC) The database life cycle contains six phases;

BCS Higher Education Qualifications. Database Systems Syllabus

INTRODUCTION DATABASE MANAGEMENT SYSTEMS

CSCI-UA: Database Design & Web Implementation. Professor Evan Sandhaus sandhaus@cs.nyu.edu evan@nytimes.com

3. Relational Model and Relational Algebra

Chapter 1: Introduction

Database Systems. Lecture 1: Introduction


Overview of Data Management

Object Oriented Databases. OOAD Fall 2012 Arjun Gopalakrishna Bhavya Udayashankar

CSE 132A. Database Systems Principles

ICAB4136B Use structured query language to create database structures and manipulate data

In This Lecture. SQL Data Definition SQL SQL. Notes. Non-Procedural Programming. Database Systems Lecture 5 Natasha Alechina

CS2Bh: Current Technologies. Introduction to XML and Relational Databases. Introduction to Databases. Why databases? Why not use XML?

Course: CSC 222 Database Design and Management I (3 credits Compulsory)

1 File Processing Systems

Would-be system and database administrators. PREREQUISITES: At least 6 months experience with a Windows operating system.

1. INTRODUCTION TO RDBMS

Ursuline College Accelerated Program

GUJARAT TECHNOLOGICAL UNIVERSITY, AHMEDABAD, GUJARAT. COURSE CURRICULUM COURSE TITLE: DATABASE MANAGEMENT (Code: ) Information Technology

Databases What the Specification Says

CSE 412/598 Database Management Spring 2012 Semester Syllabus

David Dye. Extract, Transform, Load

Chapter 1: Introduction

Introduction to Computing. Lectured by: Dr. Pham Tran Vu

SQL - QUICK GUIDE. Allows users to access data in relational database management systems.

Introduction to database management systems

Object Oriented Databases (OODBs) Relational and OO data models. Advantages and Disadvantages of OO as compared with relational

Database System Concepts

GUIDELINES IN SELECTING A PROGRAMMING LANGUAGE

Relational Database Systems 2 1. System Architecture

Course 20464: Developing Microsoft SQL Server Databases

Database Management. Chapter Objectives

Database Design and Programming

CSE 544 Principles of Database Management Systems. Magdalena Balazinska (magda) Fall 2007 Lecture 1 - Class Introduction

Database Architecture and Administration

CSE 544 Principles of Database Management Systems. Magdalena Balazinska (magda) Winter 2009 Lecture 1 - Class Introduction

The Relational Model. Why Study the Relational Model? Relational Database: Definitions

Relational Databases and SQLite

Developing Microsoft SQL Server Databases 20464C; 5 Days

Rose Data Modeler (logical)

extensible record stores document stores key-value stores Rick Cattel s clustering from Scalable SQL and NoSQL Data Stores SIGMOD Record, 2010

Database Management System Choices. Introduction To Database Systems CSE 373 Spring 2013

Chapter 2 Database System Concepts and Architecture

DATABASE MANAGEMENT SYSTEM

Summary of Alma-OSF s Evaluation of MongoDB for Monitoring Data Heiko Sommer June 13, 2013

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur

Scope of this Course. Database System Environment. CSC 440 Database Management Systems Section 1

ETL Process in Data Warehouse. G.Lakshmi Priya & Razia Sultana.A Assistant Professor/IT

SQL Data Definition. Database Systems Lecture 5 Natasha Alechina

THE OPEN UNIVERSITY OF TANZANIA FACULTY OF SCIENCE TECHNOLOGY AND ENVIRONMENTAL STUDIES BACHELOR OF SIENCE IN DATA MANAGEMENT

full file at

SQL Simple Queries. Chapter 3.1 V3.0. Napier University Dr Gordon Russell

Modern Databases. Database Systems Lecture 18 Natasha Alechina

CS 4604: Introduc0on to Database Management Systems


20464C: Developing Microsoft SQL Server Databases

Entity/Relationship Modelling. Database Systems Lecture 4 Natasha Alechina

Databases and BigData

Oracle Database 10g Express

Structured Data Storage

Databases : Lecture 11 : Beyond ACID/Relational databases Timothy G. Griffin Lent Term Apologies to Martin Fowler ( NoSQL Distilled )

Profesor: M.T.I. Juvencio Mendoza Castelán

Principles of Database. Management: Summary

Concepts of Database Management Seventh Edition. Chapter 9 Database Management Approaches


Technologies for a CERIF XML based CRIS

Relational Database Basics Review

Overview of Databases On MacOS. Karl Kuehn Automation Engineer RethinkDB

Extending Data Processing Capabilities of Relational Database Management Systems.

Not Relational Models For The Management of Large Amount of Astronomical Data. Bruno Martino (IASI/CNR), Memmo Federici (IAPS/INAF)

Introduction to Database Systems

The Relational Model. Why Study the Relational Model? Relational Database: Definitions. Chapter 3

Developing Microsoft SQL Server Databases

Developing Microsoft SQL Server Databases MOC 20464

Chapter 2. Data Model. Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel

ISM 318: Database Systems. Objectives. Database. Dr. Hamid R. Nemati

The Entity-Relationship Model

BCA. Database Management System

Section of DBMS Selection & Evaluation Questionnaire

DBMS Questions. 3.) For which two constraints are indexes created when the constraint is added?

DATABASE DESIGN AND IMPLEMENTATION II SAULT COLLEGE OF APPLIED ARTS AND TECHNOLOGY SAULT STE. MARIE, ONTARIO. Sault College

Transcription:

Email: ptw@dcs.bbk.ac.uk Web: http://www.dcs.bbk.ac.uk/~ptw/

Why study database management? 1. The database market is huge 2. There s a big demand for database skills 3. Managing data is a fundamental need for most applications 4. The subject is interesting and challenging

s are used everywhere Essential for large amounts of data: banking, shopping,... (of course) scientific investigations, e.g. astronomical data, human genome

s are used everywhere Essential for large amounts of data: banking, shopping,... (of course) scientific investigations, e.g. astronomical data, human genome but also used in smaller-scale applications: iphoto on Apple Macs uses sqlite3 to manage the photo library Squeezebox server uses mysql to manage the music library

What is a? A database is a collection of persistent data A database models part of the real world A database is, in general, a shared resource

What is a DBMS? A DBMS is specialised software which is responsible for efficient storage and retrieval of large amounts of data in a database, allowing it to persist over long periods of time. (A DBMS is also referred to more simply as a database system.)

Very simple database example Pubs: Sells: name location Horse and Hound Bloomsbury Hound and Hare Islington March Hare Bloomsbury Black Horse Islington White Horse Bloomsbury pub beer price Horse and Hound Bad Habit 1.50 Horse and Hound Rampant Ram 2.00 Hound and Hare Shining Wit 2.75 Hound and Hare Rampant Ram 2.50 March Hare Bad Habit 1.75 March Hare Rampant Ram 2.50 Black Horse Bad Habit 2.50 Black Horse Shining Wit 2.25 Black Horse Rampant Ram 2.50 White Horse Rampant Ram 2.75

Why Do We Need a DBMS? A DBMS is a software package that handles all the interaction of applications with the database. 1. It saves programmer time by providing a declarative query language, e.g. SQL. 2. It saves programmer time by automatically checking constraints. 3. It saves maintenance time by ensuring data independence. 4. It provides concurrent access to the database for multiple, simultaneous users. 5. It provides automatic recovery from failure. 6. It provides security to ensure appropriate access to data.

Three levels of Abstraction A DBMS hides details from the user/programmer using three levels of abstraction: view 1 view 2 view n logical level physical level physical: how data is stored. logical: based on a data model. view: what programs or user see.

Data Independence Changes at one level of abstraction should not require changes at higher levels. physical data independence - the physical level may be changed without affecting the logical level. growth independence - the independence of the view level from the addition of new structures to the database. Deletions of structures at the logical level disrupt views that reference them.

Instances and Schemas s change over time as information is inserted and deleted. The collection of data stored in a database at any moment in time is called an instance of the database. The overall design of the database is called the database schema. Schemas change infrequently. Physical schemas describe databases at the physical level. Logical schemas describe databases at the logical level. Schemas at the view level are sometimes called subschemas.

Disadvantages of using a DBMS Cost Lock-in Complexity

Types of DBMS users End users. Application programmers. administrator (DBA). Enterprise administrator - responsible for database design. Application administrator - responsible for view design.

DBMS examples DB2 Oracle mysql Access SQLserver various NoSQL systems, such as Cassandra, CouchDB, MongoDB

Data Model A data model consists of three components: 1. Structural part. 2. Integrity part. 3. Manipulative part - declarative or procedural.

The Relational Data Model 1. Structural part - relations. 2. Integrity part - keys (entity integrity) and foreign keys (referential integrity). 3. Manipulative part - Structured Query Language (SQL) or the relational algebra.

Other Data Models entity-relationship model (next) hierarchical data model - from 1960s and 1970s network (CODASYL) data model - from 1960s and 1970s object-oriented data model - from 1980s and 1990s semi-structured data model (e.g. XML) - from 1990s document or key-value models (for NoSQL systems) - from 2000s

Summary s are crucial to most organisations. A DBMS is a sophisticated piece of software that provides the interface between database users and the database itself. A DBMS has three levels of abstraction: physical, logical and view. Data independence means that changing data representation at a lower level does not affect a higher level. A data model has structural, integrity and manipulative parts. It is important to understand how 1. to access and update information in a database, e.g. using SQL 2. to design a database based on real-world constraints 3. a DBMS solves the problems associated with concurrent access and failure

Lecture Plan 1. to s 2. Data Modelling with the Entity-Relationship Model 3. The Basic Relational Model 3.1 Tables, Attributes and Domains 3.2 Primary and Foreign Keys Entity and Referential Integrity 4. Querying a Relational 4.1 Querying a Single Table 4.2 Querying Multiple Tables 4.3 Aggregating and Grouping Data 4.4 Updating Data 4.5 Null Values 4.6 Transaction

Lecture Plan - Continued 5. Designing a Relational 5.1 The three levels of a System and Data Independence 5.2 The Normalization Problem 5.3 Boyce-Codd Normal Form 5.4 Third Normal Form 6. s and the Web There will be coursework!

Recommended books 1. [UW08] Covers most of the topics in this module, from a slightly theoretical or abstract perspective (> 500 pages) 2. [SKS11] Comprehensive introduction to (> 1300 pages). 3. [CB10] Another comprehensive and slightly less technical introduction to (> 1200 pages). Apart from the above books, there are many more good database books at all levels.

T. Connolly and C. Begg. Systems: A Practical Approach to Design, Implementation, and. Addison-Wesley, fifth edition, 2010. A. B. Silberschatz, H. F. Korth, and S. Sudarshan. System Concepts. McGraw-Hill, sixth edition, 2011. J. D. Ullman and J. Widom. A First Course in Systems. Prentice Hall, third edition, 2008.