MIT Database Management Systems Lesson 01: Introduction

Similar documents
Database Management Systems MIT Lesson 01 - Introduction By S. Sabraz Nawaz

Database Management Systems MIT Introduction By S. Sabraz Nawaz

Database System Concepts and Architecture

DATABASE MANAGEMENT SYSTEMS. UNIT I Introduction to Database Systems

Strategic Information Systems Systems Development Life Cycle. From Turban et al. (2004), Information Technology for Management.

MIT Database Management Systems Lesson 03: Entity Relationship Diagrams

Introduction to Data Management. Lecture #1 (The Course Trailer )

Database Management System. Fundamental Database Concepts

BBM371- Data Management. Lecture 1: Course policies, Introduction to DBMS

Database Management Systems. Chapter 1

Database Management System (15ECSC208) UNIT I: Chapter 1: Introduction to DBMS and ER-Model

Database Systems ( 資料庫系統 ) Practicum in Database Systems ( 資料庫系統實驗 ) 9/20 & 9/21, 2006 Lecture #1

CAS CS 460/660 Introduction to Database Systems. Fall

Chapter 1: Introduction

Course Logistics & Chapter 1 Introduction

Outline. Quick Introduction to Database Systems. Data Manipulation Tasks. What do they all have in common? CSE142 Wi03 G-1

CS275 Intro to Databases. File Systems vs. DBMS. Why is a DBMS so important? 4/6/2012. How does a DBMS work? -Chap. 1-2

Lecture 2 08/26/15. CMPSC431W: Database Management Systems. Instructor: Yu- San Lin

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

Introduction to Data Management. Lecture #1 (Course Trailer )

Introduction to Data Management. Lecture #1 (Course Trailer )

Databases and Database Management Systems

ITP 140 Mobile Technologies. Databases Client/Server

CS425 Fall 2016 Boris Glavic Chapter 1: Introduction

Introduction and Overview

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

1/19/2012. Finish Chapter 1. Workers behind the Scene. CS 440: Database Management Systems

Data Management Lecture Outline 2 Part 2. Instructor: Trevor Nadeau

Database Systems: Design, Implementation, and Management Tenth Edition. Chapter 1 Database Systems

LECTURE1: PRINCIPLES OF DATABASES

9/8/2018. Prerequisites. Grading. People & Contact Information. Textbooks. Course Info. CS430/630 Database Management Systems Fall 2018

Chapter 1 Chapter-1

Fundamentals of Database Systems (INSY2061)

Introduction and Overview

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer DBMS

COMP Instructor: Dimitris Papadias WWW page:

IMPORTANT INFORMATION:

Chapter 1. Types of Databases and Database Applications. Basic Definitions. Introduction to Databases

IT1105 Information Systems and Technology. BIT 1 ST YEAR SEMESTER 1 University of Colombo School of Computing. Student Manual

Chapter 1 File System and Database

Introduction to Data Management. Lecture #1 (Course Trailer ) Instructor: Chen Li

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

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

CS102B: Introduction to Information Systems. Minerva A. Lagarde

KNGX NOTES INFS1603 [INFS1603] KEVIN NGUYEN

CT13 DATABASE MANAGEMENT SYSTEMS DEC 2015

Database Applications (15-415)

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

Database Technology Introduction. Heiko Paulheim

Chapter 1: Introduction

CMPUT 291 File and Database Management Systems

Question Bank. 4) It is the source of information later delivered to data marts.

Introduction: Databases and. Database Users

Introduction to Database Systems

Modern Database Systems CS-E4610

CS430/630 Database Management Systems Spring, Betty O Neil University of Massachusetts at Boston

Chapter 1: Introduction

Introduction to Data Management. Lecture #4 (E-R Relational Translation)

Chapter 1. Introduction of Database (from ElMasri&Navathe and my editing)

DBMS (FYCS) Unit - 1. A database management system stores data in such a way that it becomes easier to retrieve, manipulate, and produce information.

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

CSCC43H: Introduction to Databases

The Relational Data Model. Data Model

data dependence Data dependence Structure dependence

Page 1. Goals for Today" What is a Database " Key Concept: Structured Data" CS162 Operating Systems and Systems Programming Lecture 13.

Introduction: Databases and Database Users. Copyright 2007 Ramez Elmasri and Shamkant B. Navathe Slide 1

Meaning & Concepts of Databases

Chapter 2 Introduction to Relational Models

CMPT 354 Database Systems I. Spring 2012 Instructor: Hassan Khosravi

Introduction to Data Management. Lecture #5 Relational Model (Cont.) & E-Rà Relational Mapping

Data! CS 133: Databases. Goals for Today. So, what is a database? What is a database anyway? From the textbook:

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

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

CS 564: DATABASE MANAGEMENT SYSTEMS. Spring 2018

UNIT I. Introduction

CS275 Intro to Databases

QM Chapter 1 Database Fundamentals Version 10 th Ed. Prepared by Dr Kamel Rouibah / Dept QM & IS

Database Applications (15-415)

Announcements. PS 3 is out (see the usual place on the course web) Be sure to read my notes carefully Also read. Take a break around 10:15am

Fundamentals of Information Systems, Seventh Edition

1: Database Systems, Architecture, and Components

Introduction to Database Systems CS432. CS432/433: Introduction to Database Systems. CS432/433: Introduction to Database Systems

Database Principle. Zhuo Wang Spring

IST 210: Organization of Data

The Relational Model

Data about data is database Select correct option: True False Partially True None of the Above

Database Environment. Pearson Education 2009

Overview of the Class and Introduction to DB schemas and queries. Lois Delcambre

Introduction to Oracle

Database Management Systems Chapter 1 Instructor: Oliver Schulte Database Management Systems 3ed, R. Ramakrishnan and J.

CS 146 Database Systems

Database System Concepts

Introduction to Database Systems. Chapter 1. Instructor: . Database Management Systems, R. Ramakrishnan and J. Gehrke 1

Database Applications (15-415)

Chapter 1: Introduction

Page 1. Quiz 18.1: Flow-Control" Goals for Today" Quiz 18.1: Flow-Control" CS162 Operating Systems and Systems Programming Lecture 18 Transactions"

Introduction. Example Databases

EECS3421 Introduction to Database Management Systems. Thanks to John Mylopoulos and Ryan Johnson for material in these slides

Introduction to Database Management Systems

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

Transcription:

MIT 22033 Database Management Systems Lesson 01: Introduction By S. Sabraz Nawaz Senior Lecturer in MIT, FMC, SEUSL

Learning Outcomes At the end of the module the student will be able to: Describe the fundamental concepts in databases and data processing Analyze and systematically represent relationships in data records and perform data modeling Create, populate and manage relational databases in desktop and server environments Use query languages to populate, update and retrieve data from databases Implement basic security in database systems Outline Syllabus An introduction to data processing and databases Database management systems Data analysis and Data modeling (ER diagrams and conceptual modeling) Relational models and normalizations Creating databases using GUI tools Query Languages (Standard Query language) Introduction to database security 2

Outline Syllabus 1. Introduction to DBMS. 2. Database model& Scheme 3. Data Base Design ER model 4. Structure Query Language 5. Table normalization 6. Security concepts & introducing advanced database concepts 3

Introduction A database management system (DBMS) is a software package designed to create and maintain databases (examples?) 4

Introducing the Database What is a database? A database is a collection of related data (University Database, Credit Card Processing Systems, Airline Reservation Systems, Banking System, etc.) A database is a shared, integrated computer structure that stores a collection of: End-user data, that is, raw facts of interest to the end user. Efficient data management typically requires the use of a computer database. Metadata, or data about data, through which the end-user data are integrated and managed. 5

Database Management System (DBMS) A is a collection of programs that manages the database structure and controls access to the data stored in the database. In a sense, a database resembles a very well-organized electronic filing cabinet in which powerful software, known as a database management system, helps manage the cabinet s contents. 6

DBMS: Role and Advantages The DBMS serves as the intermediary between the user and the database. The database structure itself is stored as a collection of files, and the only way to access the data in those files is through the DBMS. 7

DBMS: Role 8

DBMS: Role The DBMS receives all application requests and translates them into the complex operations required to fulfill those requests. The DBMS hides much of the database s internal complexity from the application programs and users. The application program might be written by a programmer using a programming language such as Visual Basic.NET, Java, or C#, or it might be created through a DBMS utility program. 9

DBMS: Advantages Having a DBMS between the end user s applications and the database offers some important advantages. o First, the DBMS enables the data in the database to be shared among multiple applications or users. o Second, the DBMS integrates the many different users views of the data into a single all-encompassing data repository. 10

DBMS: Advantages - Improved data sharing The DBMS helps create an environment in which end users have better access to more and better-managed data. Such access makes it possible for end users to respond quickly to changes in their environment Concurrent accesses are scheduled by DBMS: users can think of the data as being accessed by one user at a time 11

DBMS: Advantages - Improved data security The more users access the data, the greater the risks of data security breaches. Corporations invest considerable amounts of time, effort, and money to ensure that corporate data are used properly. A DBMS provides a framework for better enforcement of data privacy and security policies. 12

DBMS: Advantages - Better data integration Wider access to well-managed data promotes an integrated view of the organization s operations and a clearer view of the big picture. It becomes much easier to see how actions in one segment of the company affect other segments. 13

DBMS: Advantages - Minimized data inconsistency Data inconsistency exists when different versions of the same data appear in different places. The probability of data inconsistency is greatly reduced in a properly designed database. 14

DBMS: Advantages - Improved data access The DBMS makes it possible to produce quick answers to ad hoc queries. From a database perspective, a query is a specific request issued to the DBMS for data manipulation for example, to read or update the data. Simply put, a query is a question, and an ad hoc query is an unpremeditated question. The DBMS sends back an answer (called the query result set) to the application. Example? 15

DBMS: Advantages - Improved decision making Better-managed data and improved data access make it possible to generate better-quality information, on which better decisions are based. The quality of the information generated depends on the quality of the underlying data. Data quality is a comprehensive approach to promoting the accuracy, validity, and timeliness of the data. While the DBMS does not guarantee data quality, it provides a framework to facilitate data quality initiatives. 16

DBMS: Advantages - Increased end-user productivity The availability of data, combined with the tools that transform data into usable information, empowers end users to make quick, informed decisions that can make the difference between success and failure in the global economy. 17

DBMS: Advantages- Reduced Application Development Time DBMS supports many functions common to applications that access the database These applications are likely to be more robust than applications developed from scratch because many important tasks are handled by DBMS instead of being implemented by the application Note: The advantages of using a DBMS are not limited to the few just listed. In fact, you will discover many more advantages as you learn more about the technical details of databases and their proper design. 18

Types of Databases A DBMS can support many different types of databases. Databases can be classified according to the number of users, the database location(s), and the expected type and extent of use. 19

Types of Databases: Number of Users A single-user database supports only one user at a time. In other words, if user A is using the database, users B and C must wait until user A is done. A single-user database that runs on a personal computer is called a desktop database. A multiuser database supports multiple users at the same time. When the multiuser database supports a relatively small number of users (usually fewer than 50) or a specific department within an organization, it is called a workgroup database. When the database is used by the entire organization and supports many users (more than 50, usually hundreds) across many departments, the database is known as an enterprise database. 20

Types of Databases: Location A database that supports data located at a single site is called a centralized database. A database that supports data distributed across several different sites is called a distributed database. 21

Types of Databases: Time and Usage Based on how DBMS are used and on the time sensitivity of the information gathered from them: o Operational Database (Transactional or production database) o Data warehouse 22

Types of Databases: Time and Usage Operational Database Transactions such as product or service sales, payments, and supply purchases reflect critical day-to-day operations. Such transactions must be recorded accurately and immediately A database that is designed primarily to support a company s day-to-day operations is classified as an operational database (sometimes referred to as a transactional or production database). 23

Types of Databases: Time and Usage data warehouse A data warehouse focuses primarily on storing data used to generate information required to make tactical or strategic decisions. Such decisions typically require extensive data massaging (data manipulation) to extract information to formulate pricing decisions, sales forecasts, market positioning, and so on. Most decision support data are based on data obtained from operational databases over time and stored in data warehouses. Additionally, the data warehouse can store data derived from many sources. To make it easier to retrieve such data, the data warehouse structure is quite different from that of an operational or transactional database. 24

Example of a database: University DB University database maintaining information concerning: o Students o Courses, and o Grades o 25

An example of a database that stores students and their grades of followed courses STUDENT Name StudentNumber Class Major Smith 17 1 CS Brown 8 2 CS COURSE CourseName CourseNumber CreditHouse Department Intro to Computer Science CS 1310 4 CS Data Structures CS 3320 4 CS Discrete Mathematics MATH 2410 3 MATH Database CS 3380 3 CS SECTION Sectionaldentifier CourseNumber Semester Year Instructor 85 MATH 2410 Fall 98 King 92 CS 1310 Fall 98 Anderson 102 CS 3320 Spring 99 Knuth 112 MATH 2410 Fall 99 Chang 119 CS 1310 Fall 99 Anderson 135 CS 3380 Fall 99 Stone GRADE_REPORT StudentNumber Sectionaldentifier Grade 17 112 B 17 119 C 8 85 A 8 92 A 8 102 B 8 135 A 26

Example: University DB (cont ) It shows the database structure and a few sample data. It is organized as five files. o The STUDENT file data on each student, o The COURSE file data on each course, o The SECTION file data on each section of a course, o The GRADE_REPORT file data on grades that students receive in the various sections they have completed, and o The PREREQUISITE file data on prerequisite of each course. 27

Need for a DBMS Traditional File System provided by the Operating System is insufficient to meet the requirements of enterprise applications Scenario: A company has a large collection (500 GB) of data on database. This data is accessed concurrently by several employees. Questions about the data must be answered quickly, changes made to the data by different users must be applied consistently, and access to certain parts of the data must be restricted. 28

When NOT to use a DBMS High initial investment (DBMS is an expensive software package) Applications use small amounts of data Lack of resources (disk space, memory, etc.) to support a database Single-user applications Overhead for flexible querying, security, concurrent access & crash recovery is not required 29

Describing & Storing Data in a DBMS A data model is a collection of high-level data description constructs used to model the application domain Data model hides the low-level storage details Most commercial database systems are based on the relational data model It is easier to use a semantic data model to model an application domain. A well-known semantic data model is the Entity Relationship (ER) Model 30

Describing & Storing Data in a DBMS (cont. ) In relational data model, the main construct is a relation. A relation has fields that belong to it which contain the name & data type of each field A description of data in terms of a data model is called the schema. o Every relation has a schema, which describes the name of the relation, name of each attribute (field or column), and the type of each column. o e.g. Students(sid: string, name: string, login: string, age: integer, gpa: real) 31

An example instance of the Students relation SID Name Login Age GPA 53666 SaNa sana@email.com 36 3.7 53668 Kumar kumar@fmail.com 34 3.2 53670 Sanath sanath@matara.com 44 3.8 32

Describing & Storing Data in a DBMS (cont..) In addition to relational data model o Hierarchical model o Network model o Object oriented model o Object relational model 33

Levels of Abstraction in a DBMS To illustrate the meaning of data abstraction, consider the example of automotive design. A car designer begins by drawing the concept of the car that is to be produced. Next, engineers design the details that help transfer the basic concept into a structure that can be produced. Finally, the engineering drawings are translated into production specifications to be used on the factory floor. As you can see, the process of producing the car begins at a high level of abstraction and proceeds to an ever-increasing level of detail. The factory floor process cannot proceed unless the engineering details are properly specified, and the engineering details cannot exist without the basic conceptual framework created by the designer. 34

Levels of Abstraction in a DBMS 35

Levels of Abstraction in a DBMS DBMS is described at four levels of abstraction: o External Model o Conceptual Model o Internal Model o Physical Model 36

Levels of Abstraction in a DBMS: External Model The external model is the end users view of the data environment. The term end users refers to people who use the application programs to manipulate the data and generate information. End users usually operate in an environment in which an application has a specific business unit focus. Companies are generally divided into several business units, such as sales, finance, and marketing. Each business unit is subject to specific constraints and requirements, and each one uses a data subset of the overall data in the organization. Therefore, end users working within those business units view their data subsets as separate from or external to other units within the organization. A specific representation of an external view is known as an external schema. Because data are being modeled, ER diagrams will be used to represent the external views. 37

Levels of Abstraction in a DBMS: Conceptual Model The conceptual model represents a global view of the entire database as viewed by the entire organization. That is, the conceptual model integrates all external views (entities, relationships, constraints, and processes) into a single global view of the data in the enterprise. Also known as a conceptual schema, it is the basis for the identification and high-level description of the main data objects (avoiding any database model specific details). The most widely used conceptual model is the ER model. Generally, the term logical design is used to refer to the task of creating a conceptual data model that could be implemented in any DBMS. 38

Levels of Abstraction in a DBMS: Internal Model Once a specific DBMS has been selected, the internal model maps the conceptual model to the DBMS. The internal model is the representation of the database as seen by the DBMS. In other words, the internal model requires the designer to match the conceptual model s characteristics and constraints to those of the selected implementation model. An internal schema depicts a specific representation of an internal model, using the database constructs supported by the chosen database. Because the internal model depends on specific database software, it is said to be software-dependent. Therefore, a change in the DBMS software requires that the internal model be changed to fit the characteristics and requirements of the implementation database model. 39

Levels of Abstraction in a DBMS: Physical Model The physical model describes the way data are saved on storage media such as disks or tapes. The physical model requires the definition of both the physical storage devices and the (physical) access methods required to reach the data within those storage devices, making it both software- and hardware- dependent. The storage structures used are dependent on the software (the DBMS and the operating system) and on the type of storage devices that the computer can handle. o o o o Describes storage details Summarizes how the relations described in the conceptual schema are actually stored on secondary storage devices such as disks and tapes Decide what file organizations used to store the relations Create indexes to speed up data retrieval operations 40

How does a DBMS do all this? DBMS is a complex software package and the major components of a DBMS are shown 41

Queries In A DBMS With reference to a fictitious university database 1. What is the name of the student with student ID SEU/IS/98/MG/16? 2. What is the average salary of lecturers who teach the course with course ID MIT22033? 3. How many students are enrolled in course MIT22033? 4. Is there any student with a GPA less than 3.0 enrolled in course CS564? These questions involving the data stored in a DBMS are called queries 42

Queries In A DBMS A DBMS provides a specialized language, called the query language in which queries can be posed Relational calculus is a formal query language based on mathematical logic Relational algebra is another formal query language, based on a collection of operators for manipulating relations, which is equivalent in power to the calculus 43

Reference: Ramakrishnan, R., & Gehrke, J. (2003). Database management systems. Osborne/McGraw-Hill. (Pp. 03 23) 44