CSC 401 :Database Design and Management II:(2 Units) (2+0+0)
Course Outline
Basic concepts. Data integration. Data independence. Functions and architecture of a DBMS.
Data models. Storage structures and access strategies. Relations and relational operations.
Relational algebra and calculus. Normalization. Security and integrity issues. Relational
systems, INGRES, DBASE entity – relationship model. E-R. diagrams. Semantic and semantic
nets. IKBS’s Pre-requisiteCSC 305
INTRODUCTION
In our society today, the dependence on database systems and their uses are really
appreciated due to their advantages. Database management system is a software
that can be used to create, manage and control database access. An organization
must build or have a database system, so that it can be able to collect, store,
maintain, process, secure data effectively and efficiently. For example, sales
company must have a database that contains their employee’s data; an academic
institution must have a database system that at least contain student’s data, so that
appropriate information can be obtained about that organization. And before an
effective database can be built, basic knowledge of databases and Database
Management Systems is needed.
Aims and Objectives:
The major aim of a database management system is to collect, store, secure,
access data and provide accurate, timely and relevant information to users. The
objectives are as follows:
• To facilitate the creation of data structures and relieve the programmer of
the problems of setting up complicated files.
• To provides security with a user access privilege.
• To control redundancy i.e., duplication.
• To provide data accuracy and integrity
A well-designed database structure has enabled organization to store, manage,
retrieve data. Once the data structure is designed completely, the database
management system handles all the complicated activities required to translate
the designed view of the structure into structures that can be usable to the
computer. Therefore, one can be prompted to ask “What is a database
management system?” (Naeem, 2022) defined Database management system as
a software that is used for storing, manipulating and managing data in a database
that enable users to design a personalized database to meet their analytics and
reporting needs.
Another author, (Azhar Susanto, 2019) define database management system as a
software that makes it easy for organizations to centralize data, manage data and
provide data access for application program.
(Lyle, 2020) similarly define database management system as a software package
designed to define, manipulate, retrieve & manage data itself, format field names,
record structure in a database and he also explained how models can be use to
design database easily using hierarchy, network models etc.
These definitions of the database management system lead us to answer the
question “what is a database?” From Encyclopaedia Britannica, database is a
collection of data or information that is specially organized for rapid search &
retrieval by a computer. It is structure use to facilitate the storage, retrieve, modify
and deletion of data in a conjunction with various data-processing operations.
(Price, J., 2022) defines database as an organized collection of structured
information or data typically stored electronically in a computer system.
Then “What is database design?” (Peterson, 2022) define database design as a
collection of processed that facilitate the designing, development,
implementation and maintenance of data management systems. In this paper,
various tools like Lucidchart, Slickplan etc. are used to create, design database
diagrams with ease.
From the above definition of a database design, a well-designed database is
applicable in all area of an organization ranging from Agriculture, education,
business, military etc. (Thakur S. , 2019) in a paper stated that “companies get
more of their work done because they can keep records of everything efficiently
and effectively.”
In (7 Benefits of Using a Database Management System, 2019), (Castro, 2018)
& (Shanika Wickramasinghe, 2021) database management system are useful and
beneficial in data sharing, data security and quick decision making etc.
(Thakur D. , 2022) said there are various techniques, methods that helps designers
to manage, plan database project and one can also use the various methodologies
to do research in papers (Jongseong Yoon, 2016) & (Halevi, 2001).
Therefore, database design is very crucial in an organization. A poorly designed
database tends to lead to bad decisions which is mostly caused by the lack of
skills for designing a database, an organization using a poorly designed database
often fail because their managers do not have access to timely information.
(Edwin B. Van Lacum, 2014) argues that science students should be introduced
to academic training at an early stage in their academic training, so they have
enough time to develop specific skill.
We can adopts the use of models for the creation of database management system
suitable for the needs of the company. Hence, it is important to note that a well-
designed database management system can be used to or it’s an efficient
mechanism that helps users (like end user, database administrators, system
analyst, casual & temporary users) to effectively collect, manipulate, access,
manage and retrieve data in a database in an organization.
DATABASE MANAGEMENT SYSTEM DESIGN
Database Management System (DBMS) is a software package designed to
define, manipulate, retrieve & managed data in a database. It generally
manipulates the data itself, the data format, field names, record structure and file
structure. A DBMS helps users and other third-party software users to store and
retrieve data. Examples of database management system are MYSQL, Microsoft
Access, Oracle Database, Microsoft SQL Server etc.
If Database Management System, managed and retrieve data in a database,
what is Database?
Database is an organized collection of structured information or data,
typically stored electronically in a computer system. A database is usually
controlled by the database management system. Data within the most types of
databases in operation today is typically modelled in rows and columns in a series
of tables to make processing and the data querying efficient. The data can then be
easily accessed, manged, modified, updated, controlled and organized. Most
databases use Structured Query Language (SQL).
Often the term “database” is often used casually or loosely to refer to both
database and the database management system used to manipulate it.
Database design is a collection of processes that facilitate the design,
development, implementation and maintenance of database management system.
It is also a design that structure the database that will be used to store & manage
data. A properly designed database helps you to improve data constituency for
disk storage. Database design is made much simpler when we use MODELS.
A database model is a collection of a logical constructs used to represent
the data structure and the data relationship found within the database. If the
models are not logically sound, the database designs derived from them will not
deliver an effective database i.e., a good models yield good database design that
are the basics of good application.
Types of database model
There are basically four common database model that are useful for
different types of data or information. Depending upon your specific needs, it
includes:
• Hierarchical databases
• Network databases
• Relational databases
• Object-oriented databases.
Hierarchical databases:
In hierarchical database model, the data is organized into tree-like
structure. In simple language, we say that it is a set of organized data in tree
structure. It is one of the oldest database models and this model is rarely used
nowadays. Its structure is like a tree with nodes representing records and branches
representing fields. The windows registry used in window XP is an example of
this database model.
Network databases:
The network database is a modified version of Hierarchical database.
Network database model organised data more like graph and can have more than
one parent node. The network model is a database model conceived as a flexible
way of representing objects and their relationship.
Relational databases:
Relational database is developed by E.F. Codd in 1970. The various
software systems used to maintain relational databases are known as relational
database management system (RDBMS). In this model, data is organised in rows
and column structure, it has three key terms that are heavily used, which are
relations, attributes and domain.
Object-oriented databases:
In object-oriented database, information is represented in the form of
object as in object-oriented programming concept. Inheritance, polymorphism,
overloading, encapsulation etc. provide an interface to objects.
The following diagram illustrates the schematic of a database management
system (DBMS):
APPLICATION OF DATABASE MANAGEMENT SYSTEM
Due to the evolution of Database management systems, companies are
getting more from their work because they can keep records of everything. Also,
it makes them faster to search information and records about any people or
product that makes them more effective in work. So, database management
system can be applied in:
• Banking:
There are thousands of transactions through banks daily like customer
information, account activities, payments, deposits, loans. Some of these
transactions can be done at the comfort of our homes. This is because DBMS
manages all the bank transactions.
• Library Management System:
There are thousands of books in the library so it is very difficult to keep
record of all the books in a copy or register. Database management system is used
to maintain all the information related to book issuing dates, name of book,
availability of books etc.
• Education:
Student’s registration details, results, courses, grades etc. are all the
information that stored in a database.
• Telecommunication:
Database management system is a must for these companies to store the
call details, monthly bills, maintaining balances etc.
• Airline Reservation system:
Database management system provides records of flight arrival, departure
and delay status in an airline system.
• Social Media Sites:
Daily, millions of users signed up for these social media accounts like
Facebook, twitter, WhatsApp etc, this information of users is stored and how we
become able to connect to other people are all possible with DBMS.
• Agriculture:
Database management can be used to maintain the record of crops, machinery,
fertilizers and livestock. One can keep each record of everything used in
agriculture using DBMS.
It can also be applied in: credit card transactions, finance, military, Online
shopping, human resource management, manufacturing, Sales etc.
USEFULNESS & BENEFITS OF DATABASE MANAGEMENT SYSTEM
Database Management Systems (DBMS) are software systems used to
store, retrieve, and run queries on data. A DBMS serves as an interface between
an end-user and a database, allowing users to create, read, update, and delete data
in the database.
Here are some top ways a database management system can improve data
processes and increase the business value of an organization’s data assets.
• Improved Data Sharing and Data Security:
Proper database management systems help increase organizational accessibility
to data, which in turn helps the end users share the data quickly and effectively
across the organization.
• A management system helps get quick solutions to database queries, thus
making data access faster and more accurate. End-users like salespeople will have
enhanced access to the data, enabling a faster sales cycle and a sounder decision
making.
• Effective Data Integration:
Implementing a data management system promotes an integrated picture of an
organization’s operations. It becomes easy to see how processes in one segment
of the organization affect other segments.
• Increase In Productivity of The End User:
Deploying a database management system, assuming positive end-user adoption,
will always result in increased productivity for the users. Data management
systems empower the end users to make quick and informed decisions that can
contribute to the success or failure of an organization in the long run.
• Quick Decision Making
With better data management systems and procedures comes higher quality
information.
• Easy retrieval of information:
If the design is developed properly then it would be easier to retrieve information
correct design mean the table, constraints, and relationship created are flawless.
• Easy modification:
Changes that you make to value of a given field will not adversely affect the
values of other fields within the table.
• Easy to maintain:
The database structure should be easy to maintain, the design is perfect if changes
in one field is not affecting changes into another field
A database management system helps in providing a framework to
facilitate data quality initiatives. In turn, higher quality information helps in
making better, faster decisions in an organization.
In addition, data management systems provide a better framework for the
enforcement of data privacy and security policies. More effective management
means better transparency and mitigated risk of breaching regulations.
METHODOLOGY AND TOOLS USED IN DESIGNING A DATABASE
Methodology:
Designing database is most important responsibility of the software
professionals who are dealing with the database related projects. For this they
follow the Design Methodology. It helps the designer to plan, manage, control
and evaluate database development projects.
Design methodology is a structured approach that uses procedures,
techniques, tools, and documentation aids to support and facilitate the process of
design. A design methodology consists of phases each containing a number of
steps, which guide the designer in the techniques appropriate at each stage of the
project.
Phases of Design Methodology:
The database design methodology is divided into three main phases. These
are:
• Conceptual database design
• Logical database design
• Physical database design
Conceptual database design:
The process of constructing a model of the information used in an
enterprise, independent of all physical considerations. The conceptual database
design phase begins with the creation of a conceptual data model of the enterprise,
which is entirely independent of implementation details such as the target DBMS,
application programs, programming languages, hardware platform, performance
issues, or any other physical considerations.
Logical database design:
It is a process of constructing a model of the information used in an
enterprise based on specific data model, but independent of a particular DBMS
and other physical considerations. The logical database design phase maps the
conceptual model on to a logical model, which is influenced by the data model
for the target database (for example, the relational model). The logical data model
is a source of information for the physical design phase.
The output of this process is a global logical data model consisting of an
Entity- Relationship diagram, relational schema, and supporting documentation
that describes this model, such as a data dictionary. Together, these represent the
sources of information for the physical design process, and they provide the
physical database designer with a vehicle for making tradeoffs that are so
important to an efficient database design.
Physical database design:
It is a description of the implementation of the database on secondary
storage; it describes the base relations, file organizations, and indexes used to
achieve efficient access to the data, and any associated integrity constraints and
security measures. Whereas logical database design is concerned with the what,
physical database design is concerned with the how. The physical database design
phase allows the designer to make decisions on how the database is to be
implemented. Therefore, physical design is tailored to a specific DBMS. There is
feedback between physical and logical design, because decisions taken during
physical design for improving performance may affect the logical data model.
For example, decisions taken during physical for improving performance, such
as merging relations together, might affect the structure of the logical data model,
which will have an associated effect on the application design.
Steps of physical database design methodology:
After designing logical database model, the steps of physical database
design methodology are as follows:
Step 1:
Translate global logical data model for target DBMS It includes operations like
the Design of base relation, derived data and design of enterprise constraints.
Step 2: Design physical representation
It includes operations like analyzing of transactions, selection office
organizations, selection of indexes and estimates the disk space requirements.
Step 2 is most important part in designing of physical design of database.
It is used to determine the optimal file organizations to store the base relations
and the indexes· that are required to achieve acceptable performance, that is, the
way in which relations and tuples will be held on secondary storage. One of the
main objectives of physical database design is to store data in an efficient way.
There are a number of factors that we may use to measure efficiency:
• Transaction throughput:
This is the number of transactions that can be processed in a given time interval.
In some systems, such as airline reservations, high transaction throughput is
critical to the overall success of the system.
• Disk storage:
This is the amount of disk space required to store the database files. The designer
may wish to minimize the amount of disk storage used.
• Response time:
It is the time required for the completion of a single transaction. From a user’s
point of view, we want to minimize response time as much as possible.
Tools:
There are wide range of software or design tools that can be used to create
physical model or ERD (Entity Relationship diagram) of your database so that
you can quickly create tables and relationship. The following are list of database
diagram tools, which are: Slickplan, Visual Paradigm, Erwin Data Modeler,
Lucidchart, Toad World, SchemaSpy, DeZign etc.
Slickplan:
Slickplan is an easy-to-use diagram and flowchart software that lets you
create professional diagrams, flowcharts, and organizational charts. You can use
Slickplan for simple task management or much more complex tasks.
Features of Slickplan:
• Build the optimal flow of your website by plotting diagrams in Slick plan.
• Visualize complex user flows through your website.
• Plot conditional elements and transition between pages with ease.
• Quickly and easily draw your diagrams.
• Draw diagrams with just a few mouse clicks
Visual Paradigm:
Visual Paradigm is a database design and management tool. This database
diagram tool helps the product development team to build applications faster.
Features of Visual Paradigm:
• It has a Drag-and-drop diagram editor.
• This tool enables you to export the database from ERD (Entity
Relationship Diagram).
• It contains REST API for designing a database.
• You can work with your team on the same project simultaneously.
• Visual Paradigm enables you to build your report.
• It provides a wizard to make a database step by step.
Erwin Data Modeler:
Erwin is a tool which is used to create logical, physical, and conceptual
data models. It provides centralize model management to business and technical
users.
Features of Erwin Data Modeler:
• It allows you to extract data from CRM, ERP, etc. for accurate modeling.
• Erwin Data Modeler has easy to use graphical environment.
• It automatically compares the model and database.
Lucidchart:
Lucidchart is a HTML5 based entity relationship diagram tool that allows
you to create a complex database diagram. You can permanently delete any data
or diagrams associated with your enterprise account.
Features of Lucidchart:
• This database diagram tool allows you to connect live data with your
diagrams.
• Lucidchart keeps your diagram secure using encryption.
• It is Integrated seamlessly with MS Office, G Suite, Atlassian (Issue
tracking app), etc.
• You can work with your team on any device across various platforms.
• You can import data to automatically build organization charts.
Toad World:
Toad World is a database modeling software that helps you to tune
application performance using an automated query rewriting facility. This
software manages code change and promotes the highest levels of quality.
Features of Toad World:
• Access key data quickly for analysis.
• It can easily identify differences by comparing and syncing servers, data,
and schemas.
• Rollback transactions directly from the transaction log without need to
restore from a backup.
• Get powerful query tuning capabilities.
• Execute scripts and T-SQL snippets for numerous instances and servers.
• Automate repetitive processes like data and schema comparisons.
SchemaSpy:
SchemaSpy is a Java-based software that analyzes the metadata of a
schema in your database. It is an er diagram tool which helps you to simplify the
database designing process.
Features of SchemaSpy:
• This entity relationship diagram tool supports JDBC (Java Database
Connectivity) compliant DBMS.
• You can generate ER diagram for foreign keys.
• Schemaspy can produce database to HTML.
DeZign:
DeZign is an er diagram tool that allows you to visualize your data
structures to create a new database. This app also helps you to understand your
existing database tables and relationships.
Features of DeZign:
• It provides easy to use and robust data modeling tool for developers.
• You can use this tool to visually make Entity Relationship Diagram (ERD).
• Navigate large diagram with pan and zoom window.
• It supports a range of data modeling techniques.
• The latest version of this entity relationship diagram tool helps you to
reduce faults in database development.
• DeZign uses ERD to graphically design database.
• Exporting diagrams to bitmap, PNG, JPEG, and GIF is possible.
RESEARCH METHODS
Research methods refers to the tools that one uses to do research. These can either
be qualitative or quantitative or mixed. Quantitative methods examine numerical
data and often requires the use of statistical tools to analyses data collected.
Research methods are the strategies, processes or techniques utilized in the
collection of data or evidence for analysis in order to uncover new information or
create better understanding of a topic. (Halevi, 2001) There are also different
types of research methods which are used or applied in different fields of study.
In Computer Science, the applied research methodology is use to carry out
investigations. Applied research methodology is used to solve a specific, practical
issue, or to investigate on how to development a system or improve on an existing
one. It also encapsulates solving scientific problems or developing new
technology.
Research Method to Apply in Database Management System
According to (Jongseong Yoon, 2016) there are three (3) research methods
that can be applied to database management system design. These processes
consist of 3 phases:
• Selecting a field topic
• Selecting online databases and finding relevant literature
• Reviewing existing literature.
Thus, this will enable a detailed study of the existing/new database
management system to be understood in terms of common issues and challenges
in the DBMS field.
Phase I: Selecting a Field Topic
In this stage the selection topic is determined. The chosen topic is
determined by using questions relating to what the topic addresses or how the
topic background. There are three fundamental questions that can became
research references:
1. What are the DBMS process models that already exist in the literature?
2. Are there any generic models/frameworks for the DBMS field?
3. What are the limitations of existing DBMS process models and what are
possible solutions to address those limitations?
Phase II: Selecting Online Databases and Finding Relevant Literature
In this stage, the scope of the review is determined. The researcher in this
phase uses the phrase “Database Management System” to find a collection of
models related to the specific DBMS that is to be developed. This can be done
through the use of step gathered knowledge sources. Such as the Web of Science,
Scopus, IEEE Explore, ACM, Springer Link, and Google Scholar are famous
digital libraries that were used to identify relevant papers in the DBFI field. This
will reveal articles purely on DBMS processes.
Phase III: Existing literature Review
This phase reveals the previous works of researchers and developers how they
have developed various types of database management system models for
different purposes as well as the process used in developing such DBMS.
However, the research method applied varies in perspective, coverage, and
findings. Notably, certain models can cover up to three DBMS perspectives,
whereas others may only be focused on two or one.
CONTRIBUTION TO DATABASE MANAGEMENT SYSTEM DESIGN
A Database management system, commonly called a DBMS, is integral to
business practice for a number of different industries. A DBMS is a software
system that companies use to store and retrieve vast amounts of information, both
for operational and marketing purposes. Having easy access to this information
is essential because it cuts down on the time needed for information retrieval and
allows those who need the information to use it efficiently.
Requirements
Successful completion of a DBMS requires that the programmers and designer
consult with everyone involved in the operation of the system to determine
specifically how it will be used. This will play a key role in determining the nature
of the programming and how data will be stored and retrieved. The types of data
used will need to be taken into consideration, as will the storage limits and any
other types of constraints or restrictions that the programmers must meet. For
instance, a simple client database serves as a data management and reporting
application, whereas other types, such as a medical records database, may use
more complicated relationships to define data. In these types of models, the
relationship between data is defined by common characteristics or core values.
Models
Once you have an idea of how the database will be used and any limitations and
specifications that need to be adhered to, you can then begin developing a data
storage and retrieval model. Various models exist for the creation of a DBMS, so
you will need to consult with programmers to determine which model best suits
the needs of your company. The model you use will determine the logic used by
the system to store and retrieve information. Logic is the sequence of steps the
database goes through to handle the information; it is the "if, then" function of
the DBMS. For instance, databases utilizing a network model allow the user to
access data using several paths or relationships, whereas a hierarchical model is
less flexible and defines data in terms of simple relationships. Whichever model
you choose, it needs to be simple to understand for users, and it needs to be
flexible enough that you can change it or adapt it to new systems later on.
Implementation
Implementation of the database system can take place once you have adopted the
model you wish to use. The database implementation process can be the most
time-consuming aspect of your DBMS creation process. Implementing your
model involves developing your data tables based on the logic that you have
chosen to use. Data must be entered into the database, either by hand or by
importing it. Data can include text information, such as names and addresses, but
it can also include pictures, graphics and sound. You must create and populate
the data tables using the appropriate commands, and then establish the necessary
rules and relationships that define how your data will be retrieved. A relationship
is the defining value or characteristic that determines how the data is accessed.
For instance, in a medical database, a nurse or physician might enter a list of
symptoms or conditions, which then triggers the database to populate a list of data
that includes several possible diagnoses and treatments. Altering a symptom or
adding a new variable can change the list of possible treatments and causes. The
more complex the logic, the more advanced the applications may be.
Troubleshooting
Once the system has been fully designed and is ready for implementation, you
will need to run it through a series of tests to ensure that it conforms to your
specific needs. This is a matter of trial and error more than anything else, but it
can be done with some efficiency if you simply create a list of items you would
like to test as you are putting together the data tables.
CONCLUSION
In conclusion, a database is a far more efficient mechanism to store and organize
data than spreadsheets; it allows for a centralized facility that can easily be
modified and quickly shared among multiple users.
REFERENCES
7 Benefits of Using a Database Management System. (2019, June 7). Retrieved
from RingLead: A zoominfo company: https://www.ringlead.com/blog/7-
benefits-of-using-a-database-management-system
Azhar Susanto, M. (2019, June). Internal Journal of Scientific & Technology
research volume 8, issue 06. Retrieved from www.google.com
Castro, K. (2018, July 12). The benefits of good database design. Retrieved
from tutorialspoint: simplyEasyLearning: https://tutorialspoint.com/The-
benefits-of -good-database-design
Edwin B. Van Lacum, M. A. (2014). A Teaching Strategy with the focus on
argumentation to improve undergraduate students' ability to read
research articles. Retrieved from CBE Life Sciences Education:
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4041503
Halevi, G. (2001). Handbook of production management methods. Retrieved
from Scholar: G Halevi - 2001 - books.google.com
Jewis, J. (n.d.). How to design a DBMS. Retrieved from Chron:
https://smallbusiness.chron.com/design-dbms-38885.html
Jongseong Yoon, D. J.-h. (2016, June). Forensic investigation framework for
the document store NoSQL DBMS: MongoDB as a case study, didgital
investigation page 53-65. Retrieved from ResearchGate:
https://www.researchgate.net/publication/302481497_Forensic_investigat
ion_framework_for_the_document_store_NoSQL_DBMS_MongoDB_as
_a_case_study
Lyle, T. D. (2020, August 18). Databse management System (DBMS). Retrieved
from Techopedia:
https://www.techopedia.com/definition/24361/database-management-
systems-dbms
Naeem, T. (2022, January 31). Database Management Software: Features,
Types, Benefits and Uses. Retrieved from Astera Enabling Data-Driven
Innovation: https://www.astera.com/type/blog/database-management-
software
Peterson, R. (2022, February 12). Database design in DBMS Tutorial: Learn
Data Modelling. Retrieved from Guru99:
https://www.guru99.com/database-design.html
Price, J. (2022). Oracle. Retrieved from Oracle database technology:
https://www.oracle.com/database/what-is-database
Shanika Wickramasinghe, M. R. (2021, December 9). DBMS: Database
Management Systems Explained. Retrieved from bmc blogs:
https://www.bmc.com/blogs/dbms-database-management-systems
Thakur, D. (2022). Retrieved from Computer notes blog:
https://ecomputernotes.com/database-system/rdbms/phases-of-design-
methodology
Thakur, S. (2019, March 9). File Organization: What is dbms. Retrieved from
What is DBMS: https://whatisdbms.com
What Is Database Management?
Database management is the process of collecting, storing, organizing,
maintaining and analyzing data. Organizations leverage various database
management practices and tools, for the purpose of driving data-based
decisions and strategic planning. There is a wide range of solutions applicable
for database management, of which database management systems (DBMSs)
are the most common.
What is a Database Management System (DBMS)?
A DBMS enables organizations to effectively manage databases. DevOps and
DataOps teams leverage DBMS technology to perform tasks such as creating
and updating databases, as well as reading, writing, and deleting data.
Functions of a DBMS
The main purpose of a DBMS is to provide an interface that enables
organizations to standardize data management consistently across teams and
departments. This is achieved through the management of three core aspects:
• Data-which is aggregated, stored, and analyzed by the organization.
• Database engines-enables organizations to access, store, and modify data.
• Database schema-determines the logical structure for each database.
When managed well, these core aspects can help organizations ensure data
integrity, security, and concurrency throughout the entire data lifecycle.
A DBMS typically provides capabilities for the following tasks:
• Data management modifications
• Monitoring and tuning
• Data security
• Backup and recovery
Advanced capabilities of DBMS include:
• Automation-for a wide variety of tasks, including logging and auditing, or
rollbacks and restarts.
• Centralization-unify data processes into one visualized workflow, accessed via
multiple devices and locations, and enable different users to display different
views of one database schema.
• Access controls-determine roles and privileges for each user, to ensure users
gain limited access to corporate data and prevent abuse of privileges.
• User friendly-DBMSs often provide an intuitive user experience, which enables
users of different skill levels to access and leverage data.
Another huge advantage of DBMS is data independence. When the DBMS is
designed for logical and physical data independence, users and developers do
not need to perform modifications when the data is moved. A DBMS can handle
this task, provided it is connected with an application programming interface
(API) to any new data sources.
DBMS Concepts
DBMS solutions come equipped with a unique set of components, each
responsible for performing different tasks. Here are the most basic DBMS
components:
• Software-A DBMS is a software-based system that provides a management
interface, which helps users control databases and data sources.
• Data-DBMS provides controls for managing operational data, such as records
and metadata, as well as index files, data dictionaries, and administrative
information.
• Procedures-documents that standardize database management, used as
guidelines by employees and users, and as automation policies.
• Database languages-DBMS use various languages to perform tasks such as
controlling user access and specifying database schema. DBMS languages
include Data Manipulation Language (DML), Data Definition Language (DDL),
Data Control Language (DCL), and Database Access Language (DAL).
• Query processor-serves as a communication intermediary between users and
the DBMS data engine. The query processor enables users to query requests, for
example, by entering instructions in Structured Query Language (SQL).
• Runtime database manager-enables DBMS to centralize management of
runtime data. A runtime database manager validates user authorizations,
processes approved queries, determines which strategy provides optimal query
results, ensures data integrity, and handles any task that requires handling query
and runtime data.
• Database manager-handles database jobs and enables administrators to
perform database operations and maintenance tasks, including data backup and
restore, cloning, deleting, updating the database, and executing patches.
• Database engine-performs the main data storage and retrieval tasks. A
database engine can be built into the DBMS software or as a remote resource
accessed via an API.
• Report generator-enables users to extract DBMS files and display the
information in structured formats, according to predefined specifications. Report
generation processes help users perform analyses and derive actionable
insights.
•
•
DBMS Categories and Technologies
There is a wide range of DBMS solutions, dedicated to different data types,
sources, and use cases. Here are the most common types of DBMS categories
and technologies:
• RDBMS-a relational database management system (RDBMS) is designed
specifically for relational databases, which store data in structured formats such
as columns and rows. Popular RDBMS solutions include Oracle Database,
MySQL, and Microsoft SQL Server.
• Network DBMS-a database in which inter-record type relationships are
organized using one-to-many sets. This differs from a Hierarchical Model in that
it allows a record type to be a member of more than one set. Individual rows can
be retrieved using API functions that allow an application to navigate through
individual set instances. Raima Database is one of the known database vendors
that have network capabilities.
• NoSQL DBMS-a NoSQL database can store data that is “not only SQL”, in formats
that are not only relational. Mainly, NoSQL databases enable you to store
schemaless data, and this type of design requires different management
capabilities. Popular NoSQL DBMS solutions include MongoDB, Amazon
DynamoDB, Cassandra, and Azure Cosmos DB.
• In-memory DBMS (IMDBMS)-also known as main memory DBMS, these systems
leverage memory for data storage, ensuring fast access to data. IMDBMS, which
uses fewer CPU instructions than disk-based systems, is typically used to
improve performance, reducing I/O latency and processing overhead.
• Multi-model DBMS-can support multiple types of data models. This type of data
strategy is often supported by NoSQL solutions, which are often required to
store different types of data together.
• NewSQL DBMS-designed like RDBMS platforms with functionalities that support
NoSQL distribution. NewSQL DBMS often provide capabilities for managing high
levels of data, such as ACID-compliance and real-time processing. Popular
NewSQL DBMS include Google Cloud Spanner, MemSQL, Splice Machine, and
ClustrixDB.
DEFINITIONS
Database is a collection of information that is organized so that it can easily be accessed,
managed, and updated.
Database Management
Database Management is the effective utilization of database resources (users,
data/information, applications, storage, network) to meet necessary conditions throughout the
entire data lifecycle.
This comprises a number of proactive techniques to prevent the deleterious effects of data
growth.
Database Management Tasks