Database
The
database is a collection of inter-related data which is used to retrieve,
insert and delete the data efficiently. It is also used to organize the data in
the form of a table, schema, views, and reports, etc.
For example: The
college Database organizes the data about the admin, staff, students and
faculty etc.
Using
the database, you can easily retrieve, insert, and delete the information.
Database Management System (DBMS)
o
Database
management system is a software which is used to manage the database. For
example: MySQL, Oracle,
etc are a very popular commercial database which is used in different
applications.
o
DBMS
provides an interface to perform various operations like database creation,
storing data in it, updating data, creating a table in the database and a lot
more.
o
It provides
protection and security to the database. In the case of multiple users, it also
maintains data consistency.
DBMS
allows users the following tasks:
o
Data
Definition: It
is used for creation, modification, and removal of definition that defines the
organization of data in the database.
o
Data
Updation: It
is used for the insertion, modification, and deletion of the actual data in the
database.
o
Data
Retrieval: It
is used to retrieve the data from the database which can be used by
applications for various purposes.
o
User
Administration: It
is used for registering and monitoring users, maintain data integrity,
enforcing data security, dealing with concurrency control, monitoring
performance and recovering information corrupted by unexpected failure.
Characteristics of DBMS
o
It uses a
digital repository established on a server to store and manage the information.
o
It can
provide a clear and logical view of the process that manipulates data.
o
DBMS
contains automatic backup and recovery procedures.
o
It
contains ACID properties which maintain data in a healthy state in case of
failure.
o
It can
reduce the complex relationship between data.
o
It is used
to support manipulation and processing of data.
o
It is used
to provide security of data.
o It can
view the database from different viewpoints according to the requirements of
the user.
Advantages of DBMS
o
Controls
database redundancy: It
can control data redundancy because it stores all the data in one single
database file and that recorded data is placed in the database.
o
Data
sharing: In
DBMS, the authorized users of an organization can share the data among multiple
users.
o
Easily
Maintenance: It
can be easily maintainable due to the centralized nature of the database
system.
o
Reduce
time: It reduces development
time and maintenance need.
o
Backup: It provides backup and recovery
subsystems which create automatic backup of data from hardware and software failures
and restores the data if required.
o
multiple
user interface: It
provides different types of user interfaces like graphical user interfaces,
application program interfaces.
Disadvantages of DBMS
o
Cost
of Hardware and Software: It
requires a high speed of data processor and large memory size to run DBMS
software.
o
Size: It occupies a large space of disks
and large memory to run them efficiently.
o
Complexity: Database system creates additional
complexity and requirements.
o
Higher
impact of failure: Failure
is highly impacted the database because in most of the organization, all the
data stored in a single database and if the database is damaged due to electric
failure or database corruption then the data may be lost forever.
Types
of Databases
There
are various types of databases used for storing different varieties of data:
1) Centralized Database
It
is the type of database that stores data at a centralized database system. It
comforts the users to access the stored data from different locations through
several applications. These applications contain the authentication process to
let users access data securely. An example of a Centralized database can be
Central Library that carries a central database of each library in a college/university.
Advantages
of Centralized Database
o
It has
decreased the risk of data management, i.e., manipulation of data will not
affect the core data.
o
Data
consistency is maintained as it manages data in a central repository.
o
It
provides better data quality, which enables organizations to establish data
standards.
o
It is less
costly because fewer vendors are required to handle the data sets.
Disadvantages
of Centralized Database
o
The size
of the centralized database is large, which increases the response time for
fetching the data.
o
It is not
easy to update such an extensive database system.
o
If any
server failure occurs, entire data will be lost, which could be a huge loss.
2) Distributed Database
Unlike
a centralized database system, in distributed systems, data is distributed
among different database systems of an organization. These database systems are
connected via communication links. Such links help the end-users to access the
data easily. Examples of
the Distributed database are Apache Cassandra, HBase, Ignite, etc.
We
can further divide a distributed database system into:
o
Homogeneous
DDB: Those database
systems which execute on the same operating system and use the same application
process and carry the same hardware devices.
o
Heterogeneous
DDB: Those database
systems which execute on different operating systems under different
application procedures and carries different hardware devices.
Advantages
of Distributed Database
o
Modular
development is possible in a distributed database, i.e., the system can be
expanded by including new computers and connecting them to the distributed
system.
o
One server
failure will not affect the entire data set.
3) Relational Database
This
database is based on the relational data model, which stores data in the form
of rows(tuple) and columns(attributes), and together forms a table(relation). A
relational database uses SQL for storing, manipulating, as well as maintaining
the data. E.F. Codd invented the database in 1970. Each table in the database
carries a key that makes the data unique from others. Examples of
Relational databases are MySQL, Microsoft SQL Server, Oracle, etc.
Properties
of Relational Database
There
are following four commonly known properties of a relational model known as ACID
properties, where:
A
means Atomicity: This ensures the data operation
will complete either with success or with failure. It follows the 'all or
nothing' strategy. For example, a transaction will either be committed or will
abort.
C
means Consistency: If we perform any operation over
the data, its value before and after the operation should be preserved. For
example, the account balance before and after the transaction should be
correct, i.e., it should remain conserved.
I
means Isolation: There can be concurrent users for
accessing data at the same time from the database. Thus, isolation between the
data should remain isolated. For example, when multiple transactions occur at
the same time, one transaction effects should not be visible to the other transactions
in the database.
D
means Durability: It ensures that once it completes
the operation and commits the data, data changes should remain permanent.
4) NoSQL Database
Non-SQL/Not
Only SQL is a type of database that is used for storing a wide range of data
sets. It is not a relational database as it stores data not only in tabular
form but in several different ways. It came into existence when the demand for
building modern applications increased. Thus, NoSQL presented a wide variety of
database technologies in response to the demands. We can further divide a NoSQL
database into the following four types:
a.
Key-value
storage: It
is the simplest type of database storage where it stores every single item as a
key (or attribute name) holding its value, together.
b.
Document-oriented
Database: A
type of database used to store data as JSON-like document. It helps developers
in storing data by using the same document-model format as used in the
application code.
c.
Graph
Databases: It
is used for storing vast amounts of data in a graph-like structure. Most
commonly, social networking websites use the graph database.
d.
Wide-column
stores: It
is similar to the data represented in relational databases. Here, data is
stored in large columns together, instead of storing in rows.
Advantages
of NoSQL Database
o
It enables
good productivity in the application development as it is not required to store
data in a structured format.
o
It is a
better option for managing and handling large data sets.
o
It
provides high scalability.
o
Users can
quickly access data from the database through key-value.
5) Cloud Database
A
type of database where data is stored in a virtual environment and executes
over the cloud computing platform. It provides users with various cloud
computing services (SaaS, PaaS, IaaS, etc.) for accessing the database. There
are numerous cloud platforms, but the best options are:
o
Amazon Web
Services (AWS)
o
Microsoft
Azure
o
Kamatera
o
PhonixNAP
o
ScienceSoft
o
Google
Cloud SQL, etc.
6) Object-oriented Databases
The
type of database that uses the object-based data model approach for storing
data in the database system. The data is represented and stored as objects
which are similar to the objects used in the object-oriented programming
language.
7) Hierarchical Databases
It
is the type of database that stores data in the form of parent-children
relationship nodes. Here, it organizes data in a tree-like structure.
Data
get stored in the form of records that are connected via links. Each child
record in the tree will contain only one parent. On the other hand, each parent
record can have multiple child records.
8) Network Databases
It
is the database that typically follows the network data model. Here, the
representation of data is in the form of nodes connected via links between
them. Unlike the hierarchical database, it allows each record to have multiple
children and parent nodes to form a generalized graph structure.
9) Personal Database
Collecting
and storing data on the user's system defines a Personal Database. This
database is basically designed for a single user.
Advantage
of Personal Database
o
It is
simple and easy to handle.
o
It
occupies less storage space as it is small in size.
10) Operational Database
The
type of database which creates and updates the database in real-time. It is
basically designed for executing and handling the daily data operations in
several businesses. For example, an organization uses operational databases for
managing per day transactions.
11) Enterprise Database
Large
organizations or enterprises use this database for managing a massive amount of
data. It helps organizations to increase and improve their efficiency. Such a
database allows simultaneous access to users.
Advantages
of Enterprise Database:
o
Multi
processes are supportable over the Enterprise database.
o
It allows
executing parallel queries on the system.
No comments:
Post a Comment