计算机学院 数据库系统原理 1 Introduction to Databases 杨宁 1/23
Contents What is Database Management System(DBMS) Something surrounding DBMS Key Concepts Key People 2/23
Concept of DBMS Database Management System (DBMS) provides efficient, reliable, convenient, and safe multi-user storage of and access to massive amounts of persistent data. 3/23
Concept of DBMS Database Management System (DBMS) provides efficient, reliable, convenient, and safe multi-user storage of and access to massive amounts of persistent data. 4/23
Concept of DBMS Database Management System (DBMS) provides efficient, reliable, convenient, and safe multi-user storage of and access to massive amounts of persistent data. 5/23
7 Key Aspects of DBMS Massive Persistent Safe Multi-user Convenient Efficient Reliable 6/23
7 Key Aspects of DBMS - Massive Google holds petabytes of data gleaned from its crawl of the Web. Pictures take much more space than texts. Repositories such Flickr store millions of pictures and support search of those pictures. Even a database like Amazon’s has millions of pictures of products to serve. Videos consume more space than Pictures. Sites such as YouTube (YouKu) hold hundreds of thousands, or millions, of movies and make them available easily. DBMS must be able to handle data residing outside of memory. 7/23
7 Key Aspects of DBMS - Persistent Data in Databases outlives the programs that execute on that data. Comparison with common computer programs Variables created by computer programs disappear after those programs finish. Data in database will be still there even after programs operating on that data stop. 8/23
7 Key Aspects of DBMS - Safe Data in Databases always remains consistent, and won’t be lost or overwritten, regardless of what failure happens Hardware failure Software failure Power outage Malicious programs 9/23
7 Key Aspects of DBMS – Multi-user Multiple users may access different parts of data DBMS must ensure data to stay in a consistent state Concurrency control Tradeoff between consistence and performance 10/23
7 Key Aspects of DBMS – Convenient Make it easy to work with large amount of data. Physical Data Independence The way that data is physically stored and laid out on disks is independent of the way that programs logically think about the structure of the data. High-level Query Language Declarative In a query, you describe what you want out of the data but you don’t need to describe how to get the data out. 11/23
7 Key Aspects of DBMS – Efficient Three import things in databases: Performance Thousands queries/updates per second 12/23
7 Key Aspects of DBMS – Reliable Make it up all the time 13/23
Contents What is Database Management System(DBMS) Something surrounding DBMS Key Concepts Key People 14/23
Aspects surrounding Databases Database applications may be programmed via frameworks Ruby on Rails, etc. DBMS may run in conjunction with middleware Application Servers Web Servers Data-intensive applications may not use DBMS at all Hadoop These are not the topics we are going to talk about in this class. ^_^ 15/23
Contents What is Database Management System(DBMS) Something surrounding DBMS Key Concepts Key People 16/23
4 Key Concepts of DBMS Data Model Schema versus data Data definition language (DDL) Data manipulation or query language (DML) 17/23
4 Key Concepts of DBMS – Data Model Data Model: description of how the data is structured. Relational Data Model: set of records Semi-structured Data Model: XML (Hierarchical structure of labeled values) Graph Data Model 18/23
4 Key Concepts of DBMS – Schema Schema versus Data Schema: type of variables Data: value of variables Schema: definition of the structure of database Student(ID, Gender, College, Grade, … ) Schema does not change often, while data change rapidly. 19/23
4 Key Concepts of DBMS – DDL, DML DDL: set up schema DML: querying and modifying data 20/23
Contents What is Database Management System(DBMS) Something surrounding DBMS Key Concepts Key People 21/23
4 Key People of DBMS DBMS implementer Builds system Database designer Establishes schema Database application developer Programs that operate on database Database administrator Loads data, keeps running smoothly 22/23
Reading Review: U/W ; S/K/S Preview: U/W ; S/K/S /23