Database Management Systems Lecture 1 Introduction to Database Systems
description
Transcript of Database Management Systems Lecture 1 Introduction to Database Systems
Database Management Systems
Lecture 1 Introduction to Database Systems
Instructor: Li Ma
Department of Computer ScienceTexas Southern University, Houston
August, 2007
04/19/23 by Li Ma, TSU - CS346
Database Systems
•What is a database?– A collection of a large amount of data– Persist over a long periods of time safely– Managed by DBMS
•What is DBMS?– Database Management Systems– A software system– A powerful tool for creating and managing
an database efficiently
04/19/23 by Li Ma, TSU - CS346
Banking System ─ An Example of DBMS
−Data: information on accounts, customers, balance, interest, transaction histories, etc.• Massive: many gigabytes at minimum,
more if keep history of transaction, even more if keep images of checks
• Persistent: data outlives programs that operate on it
04/19/23 by Li Ma, TSU - CS346
Banking System ─ An Example of DBMS (cont)
•Multi-user: many people/programs accessing same database, or even same data simultaneously
•Convenient: simple commands – transfer funds, get balance, etc.
•Efficient: no need to search all files for some specific operation – get balance of one account, etc.
04/19/23 by Li Ma, TSU - CS346
Database Management Systems
•A DBMS provides– Persistent storage– Programming interface (for query processing)– Transaction management (for simultaneous
access)
•Components of a DBMS– The storage manager– The query processor– The transaction manager
04/19/23 by Li Ma, TSU - CS346
Major DBMS vendors/Products
•Oracles
• IBM (DB2)
•Microsoft (SQL server, Access)
• Informix
•Sybase
−All are “relational” or “object-relational” database systems
04/19/23 by Li Ma, TSU - CS346
Terminology
•Data model: describes conceptual structuring of data stored in database– Ex. Data is a set of records, each with
student ID, name, address, courses, photo
– Ex. Data is graph where nodes represent cities, edges represent airline routes
04/19/23 by Li Ma, TSU - CS346
Terminology (cont)
•Schema vs. Data– Data is actual “instance” of database,
changes rapidly– Schema describes how data is to be
structured, defined at set-up time, specified in one of the languages, rarely changes - metadata
– Like types vs. variables in programming language
04/19/23 by Li Ma, TSU - CS346
Terminology (cont)
•Data Definition Language (DDL)– Commands for setting up schema of
database– Process of designing schema can be
complex, may use design methodology and/or tool
04/19/23 by Li Ma, TSU - CS346
Terminology (cont)
•Data Manipulation Language (DML)– Commands for manipulating data in
database•Retrieve, insert, delete, modify
– It is also called “query language”•Queries could be expressed in a very high-
level language, which greatly increased the efficiency of database programming
04/19/23 by Li Ma, TSU - CS346
Terminology (cont)
•People– DBMS implementers: build system– Database designers: set up schema,
load data– Database users: query/modify data
04/19/23 by Li Ma, TSU - CS346
Content of This Course
• Design of Database: how to develop a useful database?– E/R model (Chapter 2)– Relational model (Chapter 3)
• Database programming: how to express queries on the database?– Relational algebra (Chapter 5)– SQL (Chapter 6&7)
• Not DBMS implementation