0% found this document useful (0 votes)
69 views29 pages

Advanced Database Techniques: Lecture#03

This document discusses the roles and responsibilities of different people involved in database systems. It describes data administrators as responsible for overall data management, including database planning, design, policies and security. Database designers are involved in logical and physical database design. Application developers write programs to interface with the database. End users can be naive and access data through simple interfaces, or sophisticated and directly query the database. The document also provides a brief history of database systems from hierarchical and network models to relational and object-oriented databases.

Uploaded by

Bilal Tasneem
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
69 views29 pages

Advanced Database Techniques: Lecture#03

This document discusses the roles and responsibilities of different people involved in database systems. It describes data administrators as responsible for overall data management, including database planning, design, policies and security. Database designers are involved in logical and physical database design. Application developers write programs to interface with the database. End users can be naive and access data through simple interfaces, or sophisticated and directly query the database. The document also provides a brief history of database systems from hierarchical and network models to relational and object-oriented databases.

Uploaded by

Bilal Tasneem
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

ADVANCED DATABASE TECHNIQUES

LECTURE#03

DATABASE SYSTEM PEOPLE


DATA AND DATABASE ADMINISTRATORS
DA
The database system provides the enterprise with centralized control of its data.
This implies that there will be some identifiable person in the organization

who has this central responsibility for data.

That person is the data administrator (DA).

The DA is the person responsible for

management of the entire data resource of an organization including

database planning,

development and maintenance of corporate-wide definition and standards,

policies/procedures about data use and

conceptual/logical database design.

DATABASE SYSTEM PEOPLE


DATA AND DATABASE ADMINISTRATORS
DA (contd)
Thus, it is the DAs job to decide what data should be stored in the

database in the first place and


to make strategic and policy decisions for making
and dealing with that data once it has been stored.

An example of such a policy would be one that dictates


who can perform what operations on what data in what circumstances

i.e. a data security policy

DATABASE SYSTEM PEOPLE


DATABASE DESIGNERS

In large database design projects, we can distinguish between two types of designer:

o logical database designers and

o physical database designers.

The logical database designer is concerned with

identifying the data (that is, entities and attributes),

the relationships between the data and

the constraints on the data that is to be stored in the database.

The logical designer must have a thorough and complete understanding of the
organizations data and

any constraints on this data (the constraints are sometimes called business rules).

DATABASE SYSTEM PEOPLE


DATABASE DESIGNERS (CONTD)

The physical database designer decides how the logical database design is to

be physically realized.

This involves:
Mapping the logical database design into a set of tables and integrity

constraints

Selecting specific storage structures and access methods for the data to

achieve good performance

Designing any security measures required on the data


Many parts of physical database design are highly dependent on the target

DBMS

DATABASE SYSTEM PEOPLE


APPLICATION DEVELOPERS

Include programmers who write batch or online applications for other users.
Application programs may be written in a variety of host programming

languages such as C#, Visual Basic, COBOL, VB.Net etc


Each program contains statements that request the DBMS to perform

operation on the database.


This includes retrieving data, inserting, updating and deleting data.
Developers may also use Rapid Applic. Dev.(RAD) Tools

RAD tools are 4GL tools that enable an application programmer to construct
forms and reports with minimal programming effort.

DATABASE SYSTEM PEOPLE


END USERS
The database is actually developed to serve the information needs of end users
who use data to carryout their primary business responsibility which itself is in

some other functional area.

Nave Users are unsophisticated users


that access the database through specially written application programs
that attempt to make the operations as simple as possible.

The typical user interface for nave users is a forms interface.


Users do not issue explicit SQL commands such as SELECT at all
but instead operate by choosing items from a menu or filling in appropriate

fields/boxes on a form.

DATABASE SYSTEM PEOPLE


END USERS

Sophisticated Users
They are familiar with the structure of the database and the

facilities offered by the DBMS.

Access the data by submitting their requests,


entered through an online workstation or terminal,
in a high-level query language such as SQL to perform the

required operation.

In addition to forms interface, these users are capable of working

with command-driven interfaces

HISTORY OF DATABASE SYSTEMS


First Generation DBMSs
Hierarchical
Network

Second Generation DBMSs


Relational Database Systems

Third Generation DBMSs


Object-Oriented
Object Relational

HIERARCHICAL DATABASE SYSTEMS


It has been suggested that the DBMS has its roots in the 1960s Apollo moon-landing

project.

At that time, there was no system available


that would be able to handle and manage
the vast amounts of information that the project would generate.

As a result, North American Aviation (NAA, now Rockwell International),


the prime contractor for the project, developed software known as
GUAM (Generalized Update Access Method).

GUAM contained the first trace of the forerunner to the hierarchical database

systems

HIERARCHICAL DATABASE SYSTEMS


GUAM was based on the concept that smaller components come

together
as parts of larger components, and so on, until the final product is

assembled.
This structure, which confirms to an upside-down tree, is also known as a

hierarchical structure.
In the mid-1960s, IBM joined NAA to develop GUAM
into what is now known as IMS (Information Management System).
Although one of the earliest commercial DBMSs,
IMS is still the main hierarchical DBMS used by most large mainframe

installations.

HIERARCHICAL DATABASE SYSTEMS

NETWORK DATABASE SYSTEMS


In the mid-1960s, another significant development was the emergence of IDS

(Integrated Data Store) from Generic Electric.


This development led to a new type of database system known as the network

DBMS,
which had a profound effect on the information systems of that generation.

The network database was developed partly to address the need to represent

more complex data relationships


than could be modeled with hierarchical structures and
partly to impose a database standard.

NETWORK DATABASE SYSTEMS


To help establish such standards, the Conference on Data Systems Languages

(CODASYL),

a consortium of major hardware and software vendors,

Formed the Data Base Task Group (DBTG) in 1967.

The objective of DBTG was to define standard specifications


for an environment that would allow database creation and data manipulation.

The DBTG was heavily influenced by the architecture used on the earliest

DBMSs,

the Integrated Data Store (IDS), developed earlier at General Electric.

That influence led to recommendations for a network model in 1971 ANSI.

NETWORK DATABASE SYSTEMS

NETWORK DATABASE SYSTEMS


For standardization, the DBTG specified three distinct

languages:
A schema Data Definition Language (DDL), which enables the

DBA to define the schema;


A subschema DDL, which allows the application programs to

define the parts of the database they require;


A Data Manipulation Language (DML), to manipulate the data.

RELATIONAL DATABASE SYSTEMS


This project was designed to prove the practicality of the relational

model
by providing an implementation of its data structures and operations

and led to two major developments:


The development of a structured query language called SQL,
which has since become the standard language for relational DBMSs;

The production of various commercial relational DBMS products during the

1980s
for example DB2 and SQL/DS from IBM and Oracle from Oracle

Corporation.

OBJECT-BASED DATABASE SYSTEMS


In response to the increasing complexity of database

applications, two new systems have merged:


the Object-Oriented DBMS (OODBMS) and
the Object-Relational DBMS (ORDBMS).

Object-oriented database systems


support an object-oriented type system and
allow direct access to data from an object-oriented programming language
using the native type system of the language

OBJECT-BASED DATABASE SYSTEMS


Object-relational database systems
extend the relational data model by providing a richer

type system including complex data types and object


orientation.
Relational query languages, in particular SQL, need to

be correspondingly extended to deal with the richer


type system.

BENEFITS OF THE DATABASE APPROACH


Minimal Data Redundancy
Improved Consistency of Data
Improved Data Sharing
Improved Data Integrity
Security can be enforced
Transaction support can be provided
Conflicting requirements can be balanced
Increased Productivity of Application Development
Enforcement of Standards

BENEFITS OF THE DATABASE APPROACH


MINIMAL DATA REDUNDANCY

Previously separate (and redundant) data files are integrated into a single, logical

structure.
In addition, each occurrence of a data item is recorded ideally in only one place in

the database.
We avoid the wasted storage space.

It is practically impossible to completely eliminate redundancy

but it allows the designer to carefully control the type and amount of redundancy.

Sometimes there are sound business or technical reasons

for storing multiple copies of the same data

(e.g. data access efficiency, data validation checks).

BENEFITS OF THE DATABASE APPROACH


IMPROVED CONSISTENCY OF DATA

By controlling data redundancy, we greatly reduce the

opportunities for inconsistency.


For example, if each SHIP_TO_ADDRESS is stored only

once, we cannot have disagreement on the stored values.


When controlled redundancy is permitted in the db,
the db system itself should enforce consistency
by updating each occurrence of a data item when a change occurs.
This process is known as propagating updates

BENEFITS OF THE DATABASE APPROACH


IMPROVED DATA SHARING

DB belongs to the entire organization and can be shared by all

authorized users.
Authorized users are granted permission to use the database and
each user (or group of users) is provided one or more user views to

facilitate this use.


Sharing means that not only existing applications can share the data in

the database
but also that new applications can be developed to operate against

that same data

BENEFITS OF THE DATABASE APPROACH


IMPROVED DATA INTEGRITY
Data Integrity refers to the validity and consistency of stored data.
Integrity ensures that the data in the database is correct.
Inconsistency between two entries that purport to represent the same fact is an

example of lack of integrity;


E.g. an employee might be shown as having worked 400 hours in the week instead

of 40,

or as belonging to a department that does not exist.

Centralized control of the database can help in avoiding such problems

insofar as they can be avoided by permitting the DA to define and

the DBA to implement integrity constraints to be checked whenever any update operation is
performed

BENEFITS OF THE DATABASE APPROACH


SECURITY CAN BE ENFORCED

The centralized nature of a database system in a sense requires that a good security

system be in place also.


However, integration allows the DBA to define and the DBMS to enforce,

database security.
May take the form of
user names and passwords to

Security Constraints identify people authorized to use the database.

BENEFITS OF THE DATABASE APPROACH


TRANSACTION SUPPORT CAN BE PROVIDED
A transaction is a logical unit of work, typically involving several database

operations (in particular several update operations).


e.g. the transfer of a cash amount from one account A to another account

B.
Clearly two updates are required here,
one to withdraw the cash from account A and
the other to deposit it to account B.

The db system can effectively guarantee that either both of them are done

or neither is
even if, e.g. the system fails (say because of a power outage) halfway

through the process

BENEFITS OF THE DATABASE APPROACH


CONFLICTING REQUIREMENTS CAN BE BALANCED

Each user or department has needs that may be in conflict

with the needs of other users.


For example, a physical representation can be chosen for the

data storage
that gives fast access for the most important applications

(possibly at the cost of slower access for certain other

applications).

BENEFITS OF THE DATABASE APPROACH


INCREASED PRODUCTIVITY OF APPLICATION DEVELOPMENT

It greatly reduces the cost and time for developing new business applications.
There are two important reasons for it: o The DBMS provides many of the standard functions that the programmer would

normally have to write in a file-based application.


o At a basic level, the DBMS provides all the low level file-handling routines that are

typical in application programs.


o The DBMS provides a number of high-level productivity tools such as forms and

report generators and


o fourth-generation languages that automate some of the activities of database

design and implementation.

BENEFITS OF THE DATABASE APPROACH


ENFORCEMENT OF STANDARDS

With central control of database, the DBA (under the direction of DA) can ensure that

Applicable standards might include any or all of the following:

departmental, installation, corporate, industry, national and international standards.

Standards are needed for such things as data formats, naming conventions, and

all applicable standards are observed in the representation of the data.

uniform procedures for accessing, updating and protecting data.

Standardizing data representation is particularly desirable as an aid to data interchange or


movement of data between systems

(particularly important with the advent of distributed systems).

You might also like