Unit - 1 Introduction To Database Management System
Unit - 1 Introduction To Database Management System
Unit – 1
1. Banking: For customer information, accounts, and loans, and banking transactions.
2. Airlines: For reservations and schedule information. Airlines were among the first to
use databases in a geographically distributed manner—terminals situated around the
world accessed the central database system through phone lines and other data
networks.
3. Universities: For student information, course registrations, and grades.
4. Credit card transactions: For purchases on credit cards and generation of monthly
statements.
5. Telecommunication: For keeping records of calls made, generating monthly bills,
maintaining balances on prepaid calling cards, and storing information about the
communication networks.
6. Finance: For storing information about holdings, sales, and purchases of financial
instruments such as stocks and bonds.
7. Sales: For customer, product, and purchase information.
8. Manufacturing: For management of supply chain and for tracking production of
items in factories, inventories of items in warehouses/stores, and orders for items.
9. Human resources: For information about employees, salaries, payroll taxes and
benefits, and for generation of paychecks.
10. Railway Reservation Systems: For reservations and schedule information.
11. Web: For access the Back accounts and to get the balance amount.
12. E –Commerce: For Buying a book or music CD and browse for things like watches,
mobiles from the Internet.
The 3 Levels of
Data Abstraction
Conceptual Schema
Internal Schema
Stored Data
Example:
Certain fields may be designated as keys, which mean that searches for specific values
of that field will use indexing to speed them up. Where fields in two different tables take
values from the same set, a join operation can be performed to select related records in the
two tables by matching values in those fields. Often, but not always, the fields will have the
same name in both tables. For example, an "orders" table might contain (customer-ID,
product-code) pairs and a "products" table might contain (product-code, price) pairs so to
calculate a given customer's bill you would sum the prices of all products ordered by that
customer by joining on the product-code fields of the two tables. This can be extended to
joining multiple tables on multiple fields. Because these relationships are only specified at
retrieval time, relational databases are classed as dynamic database management system. The
RELATIONAL database model is based on the Relational Algebra.
Example:
Hierarchical Model:
The hierarchical data model organizes data in a tree structure. There is a hierarchy of
parent and child data segments. This structure implies that a record can have repeating
information, generally in the child data segments. Data in a series of records, which have a
set of field values attached to it. It collects all the instances of a specific record together as a
record type. These record types are the equivalent of tables in the relational model, and with
the individual records being the equivalent of rows. To create links between these record
types, the hierarchical model uses Parent Child Relationships. These are a 1:N mapping
between record types. This is done by using trees, like set theory used in the relational model,
"borrowed" from maths.
For example, an organization might store information about an employee, such as
name, employee number, department, salary. The organization might also store information
about an employee's children, such as name and date of birth. The employee and children
data forms a hierarchy, where the employee data represents the parent segment and the
children data represents the child segment. If an employee has three children, then there
would be three child segments associated with one employee segment. In a hierarchical
database the parent-child relationship is one to many. This restricts a child segment to having
only one parent segment. Hierarchical DBMSs were popular from the late 1960s, with the
introduction of IBM's Information Management System (IMS) DBMS, through the 1970s
Network Model:
The popularity of the network data model coincided with the popularity of the
hierarchical data model. Some data were more naturally modeled with more than one parent
per child. So, the network model permitted the modeling of many-to-many relationships in
data. In 1971, the Conference on Data Systems Languages (CODASYL) formally defined the
network model.
The basic data-modeling construct in the network model is the set construct. A set
consists of an owner record type, a set name, and a member record type. A member record
type can have that role in more than one set, hence the multiparent concept is supported. An
owner record type can also be a member or owner in another set. The data model is a simple
network, and link and intersection record types (called junction records by IDMS) may exist,
as well as sets between them. Thus, the complete network of relationships is represented by
several pairwise sets; in each set some (one) record type is owner (at the tail of the network
arrow) and one or more record types are members (at the head of the relationship arrow).
Object/Relational Model:
Object/relational database management systems (ORDBMSs) add new object storage
capabilities to the relational systems at the core of modern information systems. These new
facilities integrate management of traditional fielded data, complex objects such as time-
series and geospatial data and diverse binary media such as audio, video, images, and applets.
By encapsulating methods with data structures, an ORDBMS server can execute comple x
analytical and data manipulation operations to search and transform multimedia and other
complex objects.
As an evolutionary technology, the object/relational (OR) approach has inherited the
robust transaction- and performance-management features of it s relational ancestor and the
flexibility of its object-oriented cousin. Database designers can work with familiar tabular
structures and data definition languages (DDLs) while assimilating new object-management
possibi lities. Query and procedural languages and call interfaces in ORDBMSs are familiar:
SQL3, vendor procedural languages, and ODBC, JDBC, and proprie tary call interfaces are
all extensions of RDBMS languages and interfaces. And the leading vendors are, of course,
quite well known: IBM, Inform ix, and Oracle.
Object-Oriented Model:
Object DBMSs add database functionality to object programming languages. They
bring much more than persistent storage of programming language objects. Object DBMSs
extend the semantics of the C++, Smalltalk and Java object programming languages to
provide full-featured database programming capability, while retaining native language
compatibility. A major benefit of this approach is the unification of the application and
database development into a seamless data model and language environment. As a result,
applications require less code, use more natural data modeling, and code bases are easier to
maintain. Object developers can write complete database applications with a modest amount
of additional effort.
According to Rao (1994), "The object-oriented database (OODB) paradigm is the
combination of object-oriented programming language (OOPL) systems and persistent
systems. The power of the OODB comes from the seamless treatment of both persistent data,
as found in databases, and transient data, as found in executing programs."
In contrast to a relational DBMS where a complex data structure must be flattened out
to fit into tables or joined together from those tables to form the in-memory structure, object
A database system provides a data definition language to specify the database schema
and a data manipulation language to express database queries and updates. In practice, the
data definition and data manipulation languages are not two separate languages; instead they
simply form parts of a single database language, such as the widely used SQL language.
Application programmers:
These users are computer professionals who write application programs. Application
programmers can choose from many tools to develop user interfaces. Rapid application
development (RAD) tools are tools that enable an application programmer to construct forms
and reports without writing a program. There are also special types of programming
languages that combine imperative control structures (for example, for loops, while loops and
if-then-else statements) with statements of the data manipulation language.
Sophisticated users:
These users are interacting with the system without writing programs. Instead, they
form their requests in a database query language. They submit each such query to a query
processor, whose function is to break down DML statements into instructions that the storage
manager understands. Analysts who submit queries to explore data in the database fall in this
category. Online analytical processing (OLAP) tools simplify analysts’ tasks by letting them
view summaries of data in different ways.
Specialized users:
These users are sophisticated users who write specialized database applications that
do not fit into the traditional data-processing framework. Among these applications are
computer-aided design systems, knowledge base and expert systems, systems that store data
with complex data types (for example, graphics data and audio data), and environment-
Database Administrator:
One of the main reasons for using DBMSs is to have central control of both the data
and the programs that access those data. A person who has such central control over the
system is called a database administrator (DBA). The functions of a DBA include:
• Schema definition. The DBA creates the original database schema by executing a set
of data definition statements in the DDL.
• Storage structure and access-method definition.
• Schema and physical-organization modification. The DBA carries out changes to the
schema and physical organization to reflect the changing needs of the organization, or
to alter the physical organization to improve performance.
• Granting of authorization for data access. By granting different types of authorization,
the database administrator can regulate which parts of the database various users can
access. The authorization information is kept in a special system structure that the
database system consults whenever someone attempts to access the data in the system.
• Routine maintenance. Examples of the database administrator’s routine maintenance
activities are:
o Periodically backing up the database, either onto tapes or onto remote servers,
to prevent loss of data in case of disasters such as flooding.
o Ensuring that enough free disk space is available for normal operations, and
upgrading disk space as required.
o Monitoring jobs running on the database and ensuring that performance is not
degraded by very expensive tasks submitted by some users.
Atomicity: This property ensures a transaction is an atomic unit of processing. That is the
transaction is either perform completely or not perform at all.
Consistency: A correct execution of a transaction must take the database from one consistent
state to another consistent state.
Isolation: A transaction should not make its updates visible to other transactions until it is
committed.
Durability: Once the transaction changes the database and the changes are committed, these
changes must never be lost because of sub sequent failures.
A database system is partitioned into modules that deal with each of the
responsibilities of the overall system. The functional components of a database system can be
broadly divided into the storage manager and the query processor components.
The storage manager is important because databases typically require a large amount
of storage space. Some Big organizations Database ranges from giga bytes to tera bytes. So
the main memory of computers cannot store this much information, the information is stored
on disks. Data are moved between disk storage and main memory as needed.
The query processor also very important because it helps the database system simplify
and facilitate access to data. So quick processing of updates and queries is important. It is the
job of the database system to translate updates and queries written in a nonprocedural
language, at the logical level, into an efficient sequence of operations at the physical level.
Application Architectures:
Most users of a database system today are not present at the site of the database
system, but connect to it through a network. We can therefore differentiate between client
machines, on which remote database users’ work, and server machines, on which the
database system runs. Database applications are usually partitioned into two or three parts.
That is two – Tier Architecture, Three – Tier Architecture.