Chapter 1 The Database Environment and Development Process (Part 1)
Chapter 1 The Database Environment and Development Process (Part 1)
Program-Data Dependence
File structure is defined in the program code.
Duplication of Data
Different systems/programs have separate copies of the same data
Programs are written in different languages, and so cannot easily access each other’s
files.
Lengthy Development Times
Programmers must design their own file formats
Vulnerable to Inconsistency
Change in one table need changes in corresponding tables as well otherwise data will be
inconsistent
inconsistencies
Compromises in data integrity (data reliability)
agent
Stored in a standardized, convenient
form
Order Filing
System
DBMS manages data resources like an operating system manages hardware resources
Chapter 1 © 2007 by Prentice Hall 14
Advantages of the Database Approach
Program-data independence
Logical data independence
Physical data independence
Control data redundancy
Improve data consistency
Improve data sharing
Increase application development productivity
Enforcement of standards
Improve data quality
Providing backup and recovery
Improve data accessibility and responsiveness
Reduce program maintenance
Improve decision support
Chapter 1 © 2007 by Prentice Hall 15
Advantages of the Database (cont..)
Allowing multiuser transaction processing:
A multiuser DBMS must allow multiple users to access the database at the same time and it has to ensure that concurrent
transactions operate correctly and efficiently. A transaction is an executing process that includes one or more database accesses
such reading or updating database records. The DBMS must enforce the following (ACID) properties.
Atomicity: it ensures that either all operations in a transaction are executed or none are. For example, when you purchase
something from a point of sale (POS) terminal, a number of tasks are performed such as;
• Amount is deducted from your account.
• Amount is added in company's account.
All these tasks collectively are called an atomic unit of work or transaction. These tasks must be completed in all; otherwise
partially completed tasks are rolled back. Thus through DBMS, it is ensured that only consistent data exists within the
database.
Isolation: it ensures that each transaction appears to execute in isolation of other transactions, even though hundreds of
transactions may be executing concurrently.
Consistency: if each transaction has no logical error, execution of a transaction in isolation preserves the consistency of
the database.
Durability: After a transaction completes successfully, the changes it has made to the database persist, even if there are
system failures.
The Data Control Language:- (DCL) is a subset of the Structured query language (SQL)
that allows database administrators to configure security access to relational databases.
Example of DCL:- GRANT SELECT ON HR.employees TO Joe
Personal databases
Workgroup databases
Departmental/divisional databases
Enterprise database
Enterprise resource planning (ERP) systems
Data warehousing implementations
User Query/Update
HTTP Input Database
HTML results
User with
Web browser results
(Internet Explorer) Web server Application server Database
(manages web site) E.g.: PHP, ASP Server
Chapter 1 E.g., Apache
© 2007 by Prentice Hall 34
History of DB Systems
Web-enabled – 1990s – present
HTML prices
User with
Web browser prices
(Internet Explorer) Web server Application server Database
(manages web site) E.g.: PHP, ASP Server
Chapter 1 E.g., Apache
© 2007 by Prentice Hall 35
Current Status
Relational database still has the most share of market
Relational model is best for most common business needs
All major DBMS can be accessed from web through server side
applications (ASP, PHP, Perl)
Object-relational and data warehouses are value-adding features
Can be found in major DBMS