250 likes | 405 Views
Database System Concepts and Architecture s. Indra Budi indra@cs.ui.ac.id. Which of the following is a problem of lists that is solved by using a database?. data inconsistencies problems adding data problems deleting data missing data All of the above.
E N D
Database System Concepts and Architectures Indra Budi indra@cs.ui.ac.id
Which of the following is a problem of lists that is solved by using a database? • data inconsistencies • problems adding data • problems deleting data • missing data • All of the above
In database processing systems, the data is directly accessed only by the…. • In database application processing systems, the user interacts directly with the…
Evolution of computing • Database has evolved since nearly every stage of computing, from: • mainframes, which are monolithic • Client-server • Web-based
Data Models • A collection of concepts used to describe the structure of a database • Data types • Relationships • Constraints • Etc
Categories of Data Models • Conceptual data models: high level • Physical data models: how data is actually stored in a disk • Representational data models: somewhere between those two… let’s see…
Representational data model • Relational data model (our main discussion in this class) • Network data model (uses directed graphs) • Hierarchical data model (history…) • Object data model (this is new!)
Database schemas • Schemas: description of the database, but not the database itself! • Example of a schema diagram:
Not included in the schema diagram above: • Data types? • Relationships? • Constraints, such as “students in CS major must take CS1310…”
Database states • Also called ‘snapshot’ • After we define, generally a database is at the ‘empty state’ • We get the ‘initial state’ after we first load the database • Valid state is a state which satisfies the structure and constraints in the schema
Three Schema Model • ANSI/SPARC introduced the three schema model in 1975 • It provides a framework describing the role and purpose of data modeling
Three Schema Model (cont.) • External schema or user view • Representation of how users view the database • Conceptual schema • A logical view of the database containing a description of all the data and relationships • Independent of any particular means of storing the data • One conceptual schema usually contains many different external schemas • Internal schema • A representation of a conceptual schema as physically stored on a particular product • A conceptual schema can be represented by many different internal schemas
Data Independence • Application insulated from how data is structured or stored • Logical data independence: we can change the conceptual schema without changing the application program (internal schema) • Physical data independence: we can change the internal schema without changing the conceptual schema. It might be because file database must be reorganized for fine tuning.
Database Languages • Data definition language • View definition language • Data manipulation language • High level: SQL, set-at-a-time processing • Low level: VB, COBOL, record-at-a-time processing
DBMS Interfaces • Menu based interface • Forms based interface • Graphical user interface utilize menu & forms • Natural language interface, you can ask, “Show me all the students with GPA > 3” • Parametric interface, such as application for Bank Teller • Interface to DBA: create account, granting account, changing schema, delete db, etc.
DBMS utilities • Concurrency Control • Loading utility, or importer • Backup utility, usually to tape • File optimizer or reorganizer • Performance monitoring: fragmentation, load balancing • Commit & Rollback • etc
Transaction: An Execution of a DB Program • Key concept is transaction , which is an atomic (all-or-nothing property), sequence of database actions (reads/writes). • Each transaction, executed completely, mustleave the DB in a consistent state, if DB isconsistent when the transaction begins. • Users can specify some simple integrity constraints on the data, and the DBMS will enforce these constraints. • Beyond this, the DBMS does not really understand thesemantics of the data. (e.g., it does not understandhow the interest on a bank account is computed). • Thus, ensuring that a transaction (run alone) preservesconsistency is ultimately the user’s responsibility!
Classification of DBMS • Data model: relational, network, hierarchical, etc. • Number of users: Single user vs multi user • Centralized vs distributed • Price…! • OLTP support? • OLAP support (read page 842 of Elmasri)
Which of the following plays an important roles representing information about a real world in the database ? • The data definition language • The data manipulation language • The buffer manager • The data model
What is the differences ? • Database Schema Vs Database State ?
Group Assignment Comparative Study of Popular DBMS
Group 1 (Mahesa, Evan Bambang, Panca) MySQL MS-SQL Server FoxPro Group 2 (Lamo, Siti, Arief) Informix MS-Access IBM DB2 Group 3 (Tyas, Dika, Ririn) Oracle database Postgres Borland Interbase Which ones?
What to look for ? • Use theories in Elmasri Ch 1 & 2, and Kroenke Ch 1! • Examples: function, concurrency control, type, price, primary use ?, performance, capacity, etc.
Deliverables • Paper, submitted to me, you can give me directly or email me at indra@cs.ui.ac.id, due date on Tuesday, September 14th 2004 • Presentation (of course) Wednesday, September 15th 2004