A database is a data set with a regular structure.
Its front-end allows
data access, searching and sorting routines.
Its back-end
affords data inputting and
updating. A database is usually but not necessarily stored in some machine-readable format accessed by a computer. There are a wide
variety of databases, from simple
tables stored in a single file
(or even on sheets of paper), to
modern very large databases with many millions of records, stored in rooms full
of disk drives or other peripheral electronic storage devices.
In software
design, the front-end is the
part of a software system that deals with the user, and the back-end is the
part that processes the input from the front-end.
• Database Applications:
–
Banking:
all transactions
–
Airlines:
reservations, schedules
–
Universities: registration, grades
–
Sales:
customers, products, purchases
–
Manufacturing:
production, inventory, orders, supply chain
–
Human
resources: employee records, salaries,
tax deductions
Geographic systems, etc. ….
History of Databases development.
- Punched cards (Hollerith) used at the beginning
of the 20th century to record census data with mechanical machines to process
the cards and tabulate the results.
- 1950s and early 1960s: magnetic tapes developed for data
storage and used in conjunction with punched cards to update a master file onto
a new tape. All sequential processing with sorted files
- Late 1960s and 1970s: widespread use of
hard disks; direct access to data. Freed from sequential processing, databases
could be created to store data on disk.
Codd E.F. publishes paper on relational databases
-
1980s: Relational model not used in practice at
first because of performance problems. IBM developed System R, a relational
database with much more efficiency. Hierarchical and network databases replaced
and SQL takes off
-
Early
1990s: Decision support
and querying re-emerged as a major application area; data warehousing and data
mining grow as well
- Late 1990s: WWW is a catalyst for the deployment of
databases with very high transaction rates, and very high reliability
System
“A system may be defined as a set of connected
parts united by some form for regular interaction or interdependencies”.
Information Systems
Information
systems exist
in all organizations and range in complexity :
Managerial and
Technical
Formal or
informal.
Manual, Mechanized,
Computerized.
Fields of CS closely
connected with Databases Theory and Applications:
MIS and
DSS(Management Information s. & Decision Support Systems)
DSS and
effective planning and effective
control.
DSS and
Artificial intelligence:
Expert Systems
(ES), Data Mining
Intelligent
maintenance and safety diagnostics.
The Internet.
Database Management System (DBMS) :
-A software package/system to facilitate the creation and
maintenance of a computerized database.
-Set of programs to access the data and to protect the database
against hardware or software crashes and against unauthorized access.
DBMS provides
an environment that is both convenient and efficient to use. One of main Functions of
DBMS is the shielding of database
users from the hardware-level details.
Other of main functions of DBMS is persistent
storage of data and data structures (i.e. for long period, compatibility
with different programming languages and software, e.g. 75 yrs. in banks
because inheritance problem).
Database System
(DBS):
The DBMS software together with
the data itself. Sometimes, the applications are also included.
A database
system is essentially nothing more than a computerized record-keeping
system. The DBS itself can be regarded as a kind of electronic filing cabinet
or a repository for a collection of computerized data files with collection of
interrelated data. DBS contains information about a particular enterprise
Meta-Data
Meta-data is data about data
Metadata is stored in special catalog (DBMS) which contains
information such as structure each data file, and it describes the structure of
database.
Metadata helps you understand what information you have, where it
is located, and what value it provides to users. Users can view information in
a context they understand, providing a more efficient and intuitive way to
communicate
The
relation between meta-data, model and data is that meta-data enable
user/application to search for certain data in an efficient manner. It is “ROAD
MAP” for model to locate data.
Typical
examples of meta-data are lists, catalogues and search systems in library (Why?).
(e.g.
m-d. and .dbf files – header of files contains info about structure of DB)
Characteristics of DBS:
-Self-describing
nature. DBS contains DB as well as complete definition and description of
DB structure and constraints (MD-DB).
(e.g. .dbf
files – as example of RDB, copy structure extended)
-Insulation
between prg, data, and data abstraction.
(e.g. application softw. may independents of DB modifying, insert,
change etc.)
- Support of
multiple views of the data, and control of security multi-user transaction
processing.
(select,
passwords, concurrency control,…)
USER
•
Users
are differentiated by the way they expect to interact with the system
•
Application
programmers –
interact with system through DML calls,
write
specialized database applications that do not fit into the traditional data
processing framework
• End user :
- Naïve
users – invoke one of the permanent application programs that have been
written previously, e.g. people accessing database over the web, bank tellers,
clerical staff
- Sophisticated users – form requests
in a database query language
- Specialized users – write specialized
database applications that do not fit into the traditional data processing
framework
System
Analyst, Database Designer
: mediator, middleman between end users
and programmers during software development project.
(Especially at
stages of requirement analysis and design, and implementation,…)
DATABASE SYSTEM ADMINISTRATOR (vip!)
•
Coordinates all the
activities of the database system; the database administrator has a good
understanding of the enterprise’s information resources and needs.
•
Database administrator's duties include:
–
Schema definition
–
Storage structure and access method definition
–
Schema and physical organization modification
–
Granting user authority to access the database
–
Specifying integrity constraints
–
Acting as liaison with users
–
Routine maintenance
•
Backups
•
Upgrades
•
Monitoring performance and responding to changes in requirements