190 likes | 346 Views
Chapter 2. Database System Concepts and Architecture. 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
E N D
Chapter 2 Database System Concepts and Architecture
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) • Hierarchial 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, generaly 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 Architecture • Internal schema: describes the physical storage structure of the database • Conceptual schema: structure of the whole database for a community of users • External schemas for user views
Data Independence • Logical data independence: we can change the conceptual schema without changing the application program • 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 • Natural language interface, you can ask, “Show me all the students with GPA > 3” • Parametric interface, such as xBase
Database utilities • Loading utility, or importer • Backup utility, usually to tape • File optimizer or reorganizer • Performance monitoring: fragmentation, load balancing, etc.
Classification of DBMS • Single user vs multi user • Centralized vs distributed • Price…! • OLTP support? • OLAP support (read page 842)
Group Assignment Comparative Study of Popular DBMS
Group 1 (Haswar, Conna, Vicky) MySQL MS-SQL Server FoxPro Group 2 (Fitri, al-Harith, Avi) MySQL MS-SQL Server IBM DB2 Group 3 (Danu, Lia, Narpati) Oracle database Postgres Borland Interbase Group 4 (Armand, Tia, Aryo) FoxPro MS-Access Informix Which ones?
What to look for • Use theories in chapter 1 & 2!
Deliverables • Presentatoin (of course) • Due next week • Paper, submitted to the TAs: Elan and Amir (again…!)