Research Work#1:: Itbspec2: Fundamentals of Enterprise Data Management
Research Work#1:: Itbspec2: Fundamentals of Enterprise Data Management
RESEARCH WORK#1:
[Introduction to Database Systems]
Submitted by:
B22
24 March 2017
2. Historical Perspective
- 1 9 6 5 - 1 9 8 0 H i e r a r c h i c a l / N e t w o r k M o d e l s VAX D B M S
- 1 9 8 0 - 1 9 9 0 R e l a t i o n a l M o d e l I B M D B 2 , O RA C LE , S Y B A S E , IN F O R M
IX
- 1 9 9 0 s O bj e c t O r i e n t e d D B M S s O bj e c t S t o r e , V e r s a nt
- l a t e 9 0 s O bj e c t - R e l a t i o n a l D a t a b a s e s
- I n fo r m i x U n i v e r s a l S e r v e r , O r a c l e U n i v e r s a l S e r v e r D a t a W a r e h o u
sing
- Teradata+theusualsuspects
3. File Systems
- A filesystem is the methods and data structures that an operating system uses to
keep track of files on a disk or partition; that is, the way the files are organized on
the disk. The word is also used to refer to a partition or disk that is used to store
the files or the type of the filesystem. Thus, one might say ``I have two
filesystems'' meaning one has two partitions on which one stores files, or that one
is using the ``extended filesystem'', meaning the type of the filesystem.
4. Uses of DBMS
- It can be used to manage transactional databases, such as HR systems, banking
systems and so on. These are typically optimized for performing transactions.
5. Data Models
o Schema
A database schema is the skeleton structure that represents the logical view of
the entire database. It defines how the data is organized and how the relations
among them are associated. It formulates all the constraints that are to be
applied on the data.
A database schema defines its entities and the relationship among them. It
contains a descriptive detail of the database, which can be depicted by means
of schema diagrams. Its the database designers who design the schema to
help programmers understand the database and make it useful.
o Relational Model
Relational data model is the primary data model, which is used widely around
the world for data storage and processing. This model is simple and it has all
the properties and capabilities required to process data with storage efficiency.
o Levels of Abstraction
Physical level: The lowest level of abstraction describes how a system actually
stores data. The physical level describes complex low-level data structures in
detail.
Logical level: The next higher level of abstraction describes what data the
database stores, and what relationships exist among those data. The logical
level thus describes an entire database in terms of a small number of relatively
simple structures. Although implementation of the simple structures at the
logical level may involve complex physical level structures, the user of the
logical level does not need to be aware of this complexity. This referred to as
physical data independence. Database administrators, who must decide what
information to keep in a database, use the logical level of abstraction.
View level: The highest level of abstraction describes only part of the entire
database. Even though the logical level uses simpler structures, complexity
remains because of the variety of information stored in a large database. Many
users of a database system do not need all this information; instead, they need
to access only a part of the database. The view level of abstraction exists to
simplify their interaction with the system. The system may provide many
views for the same database
6. Structure of DBMS
Applications: - It can be considered as a user friendly web page where the user enters
the requests. Here he simply enters the details that he needs and presses buttons to get
the data.
End User: - They are the real users of the database. They can be developers,
designers, administrator or the actual users of the database.
DDL: - Data Definition Language (DDL) is a query fired to create database, schema,
tables, mappings etc. in the database. These are the commands used to create the
objects like tables, indexes in the database for the first time. In other words, they
create structure of the database.
DDL Compiler: - This part of database is responsible for processing the DDL
commands. That means these compiler actually breaks down the command into
machine understandable codes. It is also responsible for storing the metadata
information like table name, space used by it, number of columns in it, mapping
information etc.
DML Compiler: - When the user inserts, deletes, updates or retrieves the record from
the database, he will be sending request which he understands by pressing some
buttons. But for the database to work/understand the request, it should be broken
down to object code. This is done by this compiler. One can imagine this as when a
person is asked some question, how this is broken down into waves to reach the
brain!
Query Optimizer: - When user fires some request, he is least bothered how it will be
fired on the database. He is not all aware of database or its way of performance. But
whatever be the request, it should be efficient enough to fetch, insert, update or delete
the data from the database. The query optimizer decides the best way to execute the
user request which is received from the DML compiler. It is similar to selecting the
best nerve to carry the waves to brain!
Stored Data Manager: - This is also known as Database Control System. It is one the
main central system of the database. It is responsible for various tasks
It converts the requests received from query optimizer to machine understandable
form. It makes actual request inside the database. It is like fetching the exact part of
the brain to answer.
It helps to maintain consistency and integrity by applying the constraints. That
means, it does not allow inserting / updating / deleting any data if it has child entry.
Similarly it does not allow entering any duplicate value into database tables.
It controls concurrent access. If there is multiple users accessing the database at the
same time, it makes sure, all of them see correct data. It guarantees that there is no
data loss or data mismatch happens between the transactions of multiple users.
It helps to backup the database and recover data whenever required. Since it is a huge
database and when there is any unexpected exploit of transaction, and reverting the
changes are not easy. It maintains the backup of all data, so that it can be recovered.
Data Files: - It has the real data stored in it. It can be stored as magnetic tapes,
magnetic disks or optical disks.
Compiled DML: - Some of the processed DML statements (insert, update, delete) are
stored in it so that if there is similar requests, it will be re-used.
Data Dictionary: - It contains all the information about the database. As the name
suggests, it is the dictionary of all the data items. It contains description of all the
tables, view, materialized views, constraints, indexes, triggers etc.
Note:
- Kindly provide examples for the data models.