190 likes | 693 Views
Database Management Systems Lecture 1 Introduction to Database Systems. Instructor: Li Ma Department of Computer Science Texas Southern University, Houston. August, 2007. Database Systems. What is a database? A collection of a large amount of data
E N D
Database Management SystemsLecture 1 Introduction to Database Systems Instructor: Li Ma Department of Computer Science Texas Southern University, Houston August, 2007
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 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 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. 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 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 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 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 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 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 by Li Ma, TSU - CS346
Terminology (cont) • People • DBMS implementers: build system • Database designers: set up schema, load data • Database users: query/modify data 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 by Li Ma, TSU - CS346