UVA DEPARTMENT OF COMPUTER SCIENCEIntroduction-1Database SystemsNeed for information- information age and information explosion- information: structured and interpreted data- one of the major driving force on the growing useof computers individually and organizationally- plays a critical role in almost all areas wherecomputers are used: business, engineering, educationDatabase- a collection of self-describing integrated data- represents some aspects of the real world- a logically coherent collection- designed, built, and populated with data fora specific purpose (users and applications)UVA DEPARTMENT OF COMPUTER SCIENCEIntroduction-2A collection of self-describing integrated data- self-describing: file layouts and structures arekept in data dictionary; user need not know them- integrated: data aggregationbits > bytes > attributes > tuples > relationsRepresentation of a mini-world- database objects represent entities of interestwhose properties (attributes) are repersentedby data values- database operations (transactions) representevents of interest that add, delete, update objectsUVA DEPARTMENT OF COMPUTER SCIENCEIntroduction-3Database Management System (DBMS)Definition- a collection of programs that enables usersto create and maintain a database- a general purpose software system that facilitatesthe process of defining, constructing, andmanipulating databases for various applicationsDefining a database- specifying the data types, structures, andconstraints for the data to be stored in the databaseConstructing a database- process of storing the data on some storage mediumcontrolled by the DBMSManipulating a database- retrieve specific data and update to reflect changesUVA DEPARTMENT OF COMPUTER SCIENCEIntroduction-4Database Management SystemPrimary goal- to provide an environment that is convenient andefficient to use in storing and retrieving data- efficiency should not impair convenience:data must be available to users (applications)in a form that can be used immediately- one major reason for data abstraction- factors for efficiency: data structure, access method,and query optimization.Query optimizationretrieve (name = Emily) AND (age > 20):search for the name first or age firstUVA DEPARTMENT OF COMPUTER SCIENCEIntroduction-5Requirements for Database Management SystemMaintain the integrity of the database- a set of assertions (integrity constraints) must holdMaintain the security of the database- access control (not everyone can access all data)- multi-level securitySynchronization- control concurrent access for improved performance- anomalies not allowed: lost update, inconsistent readReplication control- reduce duplicated information- control divergenceUVA DEPARTMENT OF COMPUTER SCIENCEIntroduction-6Crash protection and recovery- logging, checkpointing, recovery management- redo and undo rulesData independence- application programs should be immune to the changeof physical database and/or access methods, etc.UVA DEPARTMENT OF COMPUTER SCIENCEIntroduction-7Data DependenceTraditional file processinguser --- application program --- filesuser --- application program --- files- data isolation and duplication- definitions of file structures are built intoevery application program that uses it- a change to that structure requires changes toall those application programs- expensive: ~70% programming effort goes modifyingworking softwareUVA DEPARTMENT OF COMPUTER SCIENCEIntroduction-8Data DependenceTraditional file processing- other problem: two programs that need the same datain different formats- having two copies of the file in different format(space and potential inconsistency among copies)- reorganize files (expensive and limited on-line
View Full Document