Fundamentals of Database Systems
Fundamentals of Database Systems
Fundamentals of
design principles and best practices. The fifth chapter delves into the fundamentals of
trends and consumer behavior allows her to
relational databases, including SQL querying, constraints, and transactions. This
develop effective campaigns that drive engage-
chapter provides practical tips and techniques for managing relational data and
ment, conversions, and ROI. Prior to her current
optimizing SQL queries. The sixth chapter discusses the role of big data in database
role, Kaitlyn worked as a Marketing Manager at
systems, including the challenges and opportunities presented by the increasing
several leading companies, where she honed her
volume, velocity, and variety of data. This chapter also covers the use of distributed
skills in brand development, campaign manage-
systems and cloud technologies for managing big data. The seventh chapter covers
ment, and customer acquisition. She has also
Database Systems
data warehousing and business intelligence (BI), including the design and develop-
worked as a freelance consultant, helping
ment of data warehouses (DWs), OLAP cubes, and the use of business intelligence tools
businesses of all sizes to create and execute
for data analysis and reporting. This chapter also covers data mining (DM) and predic-
effective marketing strategies. Kaitlyn holds a
tive analytics techniques. The eighth chapter explores the various applications of
Bachelor of Science in Marketing from the Univer-
database systems, including e-commerce, healthcare, and social media platforms. This
sity of California, Los Angeles (UCLA), where she
chapter highlights the diverse and growing role of databases in modern organizations
graduated with honors. She is a member of
and covers the unique challenges and opportunities presented by each industry.
several professional organizations, including the
With real-world examples, case studies, and practical exercises, Fundamentals of
American Marketing Association (AMA) and the
Database Systems provides readers with a comprehensive understanding of database
Kaitlyn Salter
Digital Marketing Association (DMA).
management, preparing them for success in today’s data-driven world.
ISBN 978-1-77956-170-1
00000
TAP
9 781779 561701
Toronto Academic Press
TAP TAP
FUNDAMENTALS OF
DATABASE SYSTEMS
Kaitlyn Salter
TAP
Toronto Academic Press
Fundamentals of Database Systems
Kaitlyn Salter
© 2024
ISBN: 978-1-77956-170-1 (e-book)
This book contains information obtained from highly regarded resources. Reprinted material sources are indicated
and copyright remains with the original owners. Copyright for images and other graphics remains with the original
owners as indicated. A Wide variety of references are listed. Reasonable efforts have been made to publish reliable
data. Authors or Editors or Publishers are not responsible for the accuracy of the information in the published
chapters or consequences of their use. The publisher assumes no responsibility for any damage or grievance to the
persons or property arising out of the use of any materials, instructions, methods or thoughts in the book. The
authors or editors and the publisher have attempted to trace the copyright holders of all material reproduced in this
publication and apologize to copyright holders if permission has not been obtained. If any copyright holder has not
been acknowledged, please write to us so we may rectify.
Notice: Registered trademark of products or corporate names are used only for explanation and identification
without intent of infringement.
Toronto Academic Press publishes wide variety of books and eBooks. For more information about Toronto
Academic Press and its products, visit our website at www.tap-books.com.
ABOUT THE AUTHOR
Kaitlyn Salter is an accomplished marketing professional with over a decade of experience in the
industry. She currently serves as the Director of Marketing at a leading digital agency, where she
oversees the development and execution of marketing strategies for a diverse range of clients. Kaitlyn’s
expertise spans a wide range of marketing disciplines, including digital marketing, branding, social
media, content marketing, and advertising. Her extensive knowledge of industry trends and consumer
behavior allows her to develop effective campaigns that drive engagement, conversions, and ROI.
Prior to her current role, Kaitlyn worked as a Marketing Manager at several leading companies, where
she honed her skills in brand development, campaign management, and customer acquisition. She
has also worked as a freelance consultant, helping businesses of all sizes to create and execute
effective marketing strategies. Kaitlyn holds a Bachelor of Science in Marketing from the University
of California, Los Angeles (UCLA), where she graduated with honors. She is a member of several
professional organizations, including the American Marketing Association (AMA) and the Digital
Marketing Association (DMA).
Contents
Preface xvii
List of Figures xi
List of Tables xiii
List of Abbreviations xv
Introduction to
1
1.5.3. Indexing 16
1.5.4. Query Optimization 16
Database Systems 1 1.5.5. Query Execution 16
1.6. Characteristics of Database Systems 17
Unit Introduction 1 1.6.1. Data Independence 17
1.1. Basics of Database Systems 4 1.6.2. Concurrent Access 17
1.1.1. Data 4 1.6.3. Data Integrity 17
1.1.2. Database 5 1.6.4. Security 18
1.2. History of Database Systems 6 1.6.5. Scalability 18
1.3. Importance of Database Systems 7 1.7. Architecture of Database Systems 19
1.3.1. Data Integration and Data Quality 7 1.7.1. Client-Server Architecture 19
1.3.2. Decision Making 7 1.7.2. Tiered Architecture 19
1.3.3. Efficient Data Management 8 1.7.3. Distributed Architecture 19
1.3.4. Cost Savings 8 1.8. Query Processing and Optimization 20
1.3.5. Scalability 8 1.8.1. Query Processing Phases 20
1.3.6. Regulatory Compliance 9 1.8.2. Query Optimization Techniques 21
1.3.7. Improved Customer Experience 9 1.8.3. Query Execution Plans 21
1.4. Components of Database Systems 9 1.9. Importance of Database Systems
1.4.1. Data Definition Language (DDL) 10 in Modern World 21
1.4.2. Data Manipulation Language (DML) 11 1.9.1. Data Management 22
1.4.3. Data Query Language (DQL) 12 1.9.2. Decision Making 22
1.4.4. Data Control Language (DCL) 13 1.9.3. Improved Efficiency 22
1.4.5. Database Management System (DBMS) 14 1.9.4. Cost Savings 22
1.5. Data Storage and Retrieval 15 1.9.5. Data Security 22
1.5.1. Primary Storage 16 1.9.6. Compliance 22
1.5.2. Secondary Storage 16 1.9.7. Innovation 23
1.10. Summary 24 3.3.1. History of Relational Databases 67
Review Questions 24 3.3.2. Importance of Relational Databases 68
Multiple Choice Questions 24 3.3.3. Applications of Relational Databases 69
References 26 3.3.4. Advantages of Relational Database 71
3.3.5. Disadvantages of Relational Database 72
Database
2
3.4. Object-Oriented Databases (OODBs) 73
Development
3.4.1. History of Object-Oriented Databases
(OODBs) 74
3 Types of Databases
3.6.4. Advantages of NoSQL Databases 92
49
3.6.5. Disadvantages of NoSQL Databases 93
3.7. Document Databases 94
3.7.1. History Document Databases 95
Unit Introduction 49
3.7.2. Importance Document Databases 96
3.1. Hierarchical Databases 52
3.7.3. Applications of Document Databases 97
3.1.1. History of Hierarchical Databases 52
3.7.4. Advantages of Document Databases 98
3.1.2. Importance of Hierarchical Databases 53
3.7.5. Disadvantages of Document Databases100
3.1.3. Applications of Hierarchical Databases 54
3.8. Summary 102
3.1.4. Advantages of Hierarchical Databases 55
Review Questions 102
3.1.5. Disadvantages of Hierarchical Databases57
Multiple Choice Questions 102
3.2. Network Databases 58
References 105
4 Database Modeling
3.2.1. History of Network Databases 60
115
3.2.2. Importance of Network Databases 61
3.2.3. Applications of Network Databases 62
3.2.4. Advantages of Network Databases 63
3.2.5. Disadvantages of Network Databases 65 Unit Introduction 115
vi
4.1.2. Data Modeling in the Setting of 4.8.5. Define Key Attributes 142
Database Design 119 4.8.6. Validate Keys and Relationships 142
4.1.3. Constituents of a Data Model 120 4.8.7. Foreign Keys 142
4.1.4. Significance of Data Modeling 120 4.8.8. Categorizing Foreign Keys 143
4.2. The Entity-Relationship (ER) Model 120 4.8.9. Foreign Key Ownership 143
4.2.1. Basic Concepts of E-R Modeling 121 4.8.10. Diagramming Foreign Keys 143
4.2.2. Entities 121 4.9. Adding Qualities to the Model 143
4.2.3. Special Entity Types 121 4.9.1. Relation of Attributes to Entities 143
4.3. Database Design is a Part of 4.9.2. Parent-Child Relationships 144
Data Modelling 122
4.9.3. Multivalued Attributes 144
4.3.1. Requirements Analysis 123
4.9.4. Relations Described by Attributes 145
4.3.2. Phases in Building the Data Model 124
4.9.5. Code Values and Derived Attributes 145
4.4. Classifying Data Objectsand
Relationships 125 4.9.6. Attributes in the ER Diagram 146
4.5. Derived Attributes and Code Values 128 4.10.3. Types of Hierarchies 147
4.5.2. Naming Data Objects 130 4.11. Adding Data Integrity Rules 148
5 Relational
4.7.3. Transform Complex Relations into Binary
Relationships 138
4.7.4. Eliminate, Redundant, and Relationships
139 Database and SQL 163
4.8. Primary and Foreign Keys 139
4.8.1. Primary Key Attributes 140 Unit Introduction 163
vii
5.4. Components of Relational Database 167 6.4.1. Scalability 195
5.4.1. Table 167 6.4.2. Availability and Fault Tolerance 195
5.4.2. Record/Row 168 6.4.3. Efficient Network Setup 195
5.4.3. Field/Column 168 6.4.4. Flexibility 196
5.4.4. Datatype 168 6.4.5. Privacy and Access Control 196
5.4.5. Query/View 170 6.4.6. Elasticity 196
5.4.6. Stored Procedure 171 6.4.7. Batch Processing and Interactive
5.5. Overview of SQL 171 Processing 196
5.5.4. Importance of SQL Today and Tomorrow 174 6.4.11. Efficient Scheduling 197
6.1.2. Importance of Big Data 188 7.3.2. Requirement for Data Warehouse (DW) 209
6.3.1. Transactional Systems 193 7.5.1. Customer and Market Analysis 216
Multiple Choice Questions 219 8.4.2. Examples of Social Media Databases 234
ix
List of Figures
Figure 1.1. Illustration of the data-driven decision Figure 3.3. An example of the network database
making model
Figure 1.2. Schematic of a database Figure 3.4. An example of the complex data
relationship
Figure 1.3. Schematic of the data management
Figure 3.5. Network database in financial system
Figure 1.4. Illustration of the importance of customer
database Figure 3.6. Schematic of a relational database
Figure 1.5. Components of the database components Figure 3.7. Comparison of the structured and
unstructured data
Figure 1.6. Schematic of the DDL commands
Figure 3.8. Illustration of the object-oriented database
Figure 1.7. Illustration of the data manipulation
language (DML) Figure 3.9. Illustration of the object-oriented database
and object-oriented programming
Figure 1.8. Schematic of the DCL statements
Figure 3.10. Illustration of a graph database with an
Figure 1.9. Illustration of the DBMS example
Figure 1.10. Data integrity and its components Figure 3.11. Relationship modeling in graph database
Figure 1.11. Illustration of the distributed architecture Figure 3.12. Fraud detection using graph database
Figure 2.1. Waterfall model Figure 3.13. Illustration of the NoSQL database
Figure 2.2. Illustration of the requirement gathering Figure 3.14. Illustration of an example of the NOSQL
and its ways database
Figure 2.3. Sequence of the logical design in Figure 3.15. Illustration of the document database
database
Figure 3.16. Illustration of the content management
Figure 2.4. A summary of the repetitive stages system
involved in designing database
Figure 4.1. Illustration of working of database
Figure 2.5. An example of the ER diagram modelling
Figure 3.1. An example of the hierarchical database Figure 4.2. Flow diagram of entity-relationship (ER)
Figure 3.2. Hierarchy of networks and systems in a Figure 4.3. Schematic of data modelling
generic telecom infrastructure
Figure 4.4. Flow chart of entity and set of entity Figure 6.4. Schematic of the transactional or
analytical datatypes
Figure 4.5. Example of linear process
Figure 6.5. Diagram representing CAP theorem
Figure 4.6. Picture of King Lear
Figure 7.1. Illustration of the data warehousing
Figure 4.7. Illustration of cardinality
Figure 7.2. Schematic of the business intelligence and
Figure 4.8. Illustration of types of marketing entities its components
Figure 4.9. Example of entity attribute matrix Figure 7.3. Connections between business and
operational intelligence apps
Figure 4.10. ENTITY-ENTITY matrix and an ENTITY-
ATTRIBUTE matrix Figure 7.4. Displaying data warehouse components
Figure 4.11. Schematic of binary relationship Figure 7.5. Representing reporting system parts
Figure 4.12. Diagram of instance of recursive Figure 7.6. Showing DW development lifecycle
association (DWLC) model
Figure 4.13. Illustration of many-to-many relationship Figure 7.7. Schematic of the online transaction
processing (OLTP)
Figure 4.14. Schematic of removing redundant
relationship Figure 8.1. Illustration of the order management
system and its components
Figure 5.1. An example of the relational database
Figure 8.2. Health data analytics
Figure 5.2. An example of the hierarchical database
Figure 8.3. Customer relationship management and
Figure 5.3. An example of the network data model its components
Figure 6.1. The five V’s of big data Figure 8.4. Content management system and its
components
Figure 6.2. Illustration of Hadoop and its benefits
Figure 8.5. Various functions of logistics
Figure 6.3. Illustration of the NoSQL database
Figure 8.6. Using Amazon DynamoDB document API
with the AWS mobile SDK for android
List of Tables
Table 4.1. Tabular representation of models of an ENTITY-ENTITY matrix, and an ENTITY-ATTRIBUTE matrix
BI Business Intelligence
DM Data Mining
DW Data Warehouse
ER Entity-Relationship
The field of database systems has evolved significantly over the years, and as a result, it has
become more complex. Understanding the fundamentals of database systems is the key to
unlocking the full potential of databases. Database systems provide a centralized and structured
approach to storing and organizing data, enabling efficient data retrieval, manipulation, and
analysis. This is essential for businesses that deal with large volumes of data, as it provides a
systematic way of managing data that leads to more accurate and informed decision-making.
Furthermore, a solid foundation in database systems is essential for anyone involved in
the development of software applications that utilize databases, as it helps to ensure data
consistency and integrity. Ultimately, a good understanding of the fundamentals of database
systems is essential for anyone seeking to work with databases in any capacity.
The first chapter provides an introduction to database systems, discussing the basic
components, features, and advantages of database management. This chapter also covers
the evolution of database systems and their growing role in modern organizations. The second
chapter explores the database development process, including requirements gathering,
database design, implementation, testing, and maintenance. This chapter provides a detailed
guide to designing and implementing an efficient database system that meets the needs of
the organization.
The third chapter discusses the different types of databases, including relational, NoSQL, and
graph databases, and their respective strengths and weaknesses. This chapter also covers
the differences between these types of databases and their use cases. The fourth chapter
focuses on database modeling, covering entity-relationship (ER) diagrams, normalization,
and other techniques used to design a database schema. This chapter also covers database
design principles and best practices.
The fifth chapter delves into the fundamentals of relational databases, including SQL querying,
constraints, and transactions. This chapter provides practical tips and techniques for managing
relational data and optimizing SQL queries. The sixth chapter discusses the role of big data
in database systems, including the challenges and opportunities presented by the increasing
volume, velocity, and variety of data. This chapter also covers the use of distributed systems
and cloud technologies for managing big data.
The seventh chapter covers data warehousing and business intelligence (BI), including the
design and development of data warehouses (DWs), OLAP cubes, and the use of business
intelligence tools for data analysis and reporting. This chapter also covers data mining (DM)
and predictive analytics techniques. The eighth chapter explores the various applications
of database systems, including e-commerce, healthcare, and social media platforms. This chapter
highlights the diverse and growing role of databases in modern organizations and covers the unique
challenges and opportunities presented by each industry.
With real-world examples, case studies, and practical exercises, Fundamentals of Database Systems
provides readers with a comprehensive understanding of database management, preparing them for
success in today’s data-driven world.
—Author
CHAPTER 1
INTRODUCTION TO
DATABASE SYSTEMS
UNIT INTRODUCTION
In today’s digital age, we generate and consume vast amounts of data on a daily basis,
ranging from personal information to financial transactions, to social media interactions, and
more. Database systems play a critical role in the management and storage of this data,
making it easily accessible and organized for efficient retrieval and processing. Database
systems can be defined as software systems that manage and store large amounts of
data, allowing users to retrieve, add, update, and delete data as needed (Hellerstein
& Stonebraker, 2005). They are used in a variety of industries, including e-commerce,
healthcare, finance, education, logistics, and many more.
The concept of database systems has been around for several decades, with the first
database management system (DBMS) developed in the 1960s. The early DBMSs were
hierarchical and network models, which were eventually replaced by the relational model in
the 1980s. The relational model is still widely used today and is considered the foundation of
modern database systems. Database systems consist of several key components, including
data definition language (DDL), data manipulation language (DML), data query language
(DQL), data control language (DCL), and DBMS (Yeung & Hall, 2007). DDL is used to
define the structure of the database, including tables, relationships, and constraints. DML
is used to manipulate the data in the database, including adding, updating, and deleting
data. DQL is used to retrieve data from the database, and DCL is used to control access
to the data in the database. DBMS is the software system that manages the database,
providing tools for data storage, retrieval, and processing. DBMSs can be classified into
several types, including relational, NoSQL, object-oriented, and others (Jukic et al., 2014).
Data storage and retrieval is a critical components of database systems. Primary storage
2 Fundamentals of Database Systems
refers to the use of main memory, which provides fast access to data but has limited
storage capacity. Secondary storage refers to the use of hard disks or solid-state drives,
which provide larger storage capacity but slower access speeds.
Indexing involves creating a data structure that enables swift access to data based
on particular conditions, thereby enhancing data retrieval speed. On the other hand,
query optimization is employed to boost the efficiency of data retrieval by selecting the
most optimal query plan based on the complexity and size of the data. Query execution
is the process of executing the selected query plan and returning the results to the user.
Database systems have several key characteristics that make them critical for managing
large amounts of data. These include data independence, concurrent access, data integrity,
security, and scalability. Data independence refers to the ability to change the structure of
the database without affecting the applications that use the data (Widom & Ceri, 1995).
Concurrent access refers to the ability to allow multiple users to access the data at the
same time. Data integrity refers to the ability to maintain the accuracy and consistency of
the data in the database (Elmasri & Navathe, 2006). Security refers to the ability to control
access to the data in the database to prevent unauthorized access. Scalability refers to
the ability to handle increasing amounts of data without compromising performance.
The architecture of database systems can be classified into several types, including
client-server architecture, tiered architecture, and distributed architecture. Client-server
architecture involves a client that sends requests to a server, which processes the requests
and returns the results to the client (Coronel & Morris, 2016). Tiered architecture involves
multiple layers of servers, with each layer responsible for specific functions such as web
serving, application serving, and database serving. Distributed architecture involves multiple
servers distributed across different locations, with each server responsible for a subset of
the data. Query processing and optimization are critical components of database systems.
Query processing involves several phases, including parsing, translation, optimization,
and execution.
Learning Objectives
At the end of this chapter, the readers will be able to:
• Understand the definition of database systems.
• Recognize the importance of database systems in the modern world.
• Trace the brief history of database systems.
• Identify the key components of database systems, including DDL, DML, DQL,
DCL, and DBMS.
• Describe the process of data storage and retrieval, including primary storage,
secondary storage, indexing, query optimization, and query execution.
• Explain the characteristics of database systems, such as data independence,
concurrent access, data integrity, security, and scalability.
CHAPTER
1
Introduction to Database Systems 3
Key Terms
• Client-server architecture
• Data
• Data definition language (DDL)
• Data independence
• Database
• Database management system (DBMS)
• Query optimization
• Scalability
CHAPTER
1
4 Fundamentals of Database Systems
1.1.1. Data
Data is any distinct piece of information that is recorded or stored
in a computer or other electronic device. It is a collection of
unorganized facts, figures, and statistics that are meaningless
until they are processed and turned into useful information. Data
can be in different forms, including text, numbers, images, audio,
and video. In computing, data is the foundation of any computer
program, software, or system (Sokolinsky, 2004). It is the input that
the computer uses to perform calculations, process instructions,
or produce output. Data is stored in a variety of ways, such as
databases, spreadsheets, text files, binary files, and multimedia
files. The way in which data is stored and organized can affect
KEYWORD its usefulness and accessibility.
Structured data Data is essential for decision-making, research, analysis,
is data that has a
and problem-solving in many fields, including business, science,
standardized format
for efficient access medicine, education, and government. For example, in business,
by software and data is used to monitor sales, track inventory, analyze customer
humans alike. behavior, and make strategic decisions. In medicine, data is
used to study diseases, monitor patient health, and develop new
treatments. In science, data is used to test hypotheses, make
predictions, and create models. There are two types of data:
structured and unstructured. Structured data is organized in a
specific format, such as a spreadsheet or database, and can be
easily processed and analyzed. Unstructured data, on the other
hand, is not organized in a specific format and may include text,
images, or multimedia (Maryanski et al., 1986). It is more difficult to
process and analyze unstructured data, but it can provide valuable
insights and information (Figure 1.1).
Data can also be classified based on its quality. High-quality
data is accurate, complete, relevant, and timely (Chaudhri et al.,
2003). It is free from errors, inconsistencies, and duplications.
Low-quality data, on the other hand, may be incomplete, outdated,
or contain errors, which can lead to incorrect conclusions or
decisions. In recent years, the amount of data generated has
increased exponentially due to the widespread use of technology
and the internet. This has led to the development of big data, which
refers to large datasets that are too complex or unstructured to be
CHAPTER
1
Introduction to Database Systems 5
1.1.2. Database
A database is an organized collection of structured data that is
stored and managed in a computer or other electronic device. It is
designed to store and retrieve information efficiently and accurately.
Databases can be used for a wide range of applications, from small
personal projects to large enterprise systems (Elmasri & Navathe,
2006). A database typically consists of one or more tables that
are related to each other. Each table contains a set of records,
and each record represents a specific instance of the data that is
being stored. The columns in a table represent different attributes
of the data, such as name, age, or address. Each column is given
a data type that specifies the type of data that can be stored in
it, such as text, number, or date (Figure 1.2).
Figure 1.2.
Schematic of a
database.
CHAPTER
1
8 Fundamentals of Database Systems
Did you Know? Database systems provide an efficient way to manage data,
including indexing, searching, and updating data. This helps to
According to a reduce data entry errors, increase data consistency, and improve
survey conducted by data security (Figure 1.3).
Forbes, over 90% of
organizations rely on
data-driven insights
to make strategic
business decisions,
highlighting the critical
role that databases
play in decision
making.
Figure 1.3.
Schematic of the
data management.
1.3.5. Scalability
Database systems can be designed to scale up or down based
on the needs of an organization, allowing them to handle large
volumes of data without sacrificing performance.
CHAPTER
1
Introduction to Database Systems 9
Figure 1.5.
Components of
the database
components.
CHAPTER
1
Introduction to Database Systems 11
CHAPTER
1
12 Fundamentals of Database Systems
CHAPTER
1
14 Fundamentals of Database Systems
1.5.3. Indexing
Indexing is a technique used to improve the performance of data
retrieval operations (Xue et al., 2019). It involves creating an
index, which is a data structure that contains the values of one
or more columns of a table, along with a pointer to the location of
the corresponding record in the table. When a query is executed,
the index is searched instead of the table, resulting in faster data
retrieval.
The database system must enforce the integrity constraints that are
specified in the database schema to ensure the data is accurate
and consistent (Yesin et al., 2021) (Figure 1.10).
1.6.4. Security
Database systems must provide security mechanisms to protect the
database from unauthorized access and ensure the confidentiality,
integrity, and availability of the data (Bertino & Sandhu, 2005). This
includes authentication, authorization, and encryption mechanisms
to protect the data from unauthorized access.
1.6.5. Scalability
Database systems must be designed to scale up or down to meet
the changing demands of the application (Kuhlenkamp et al., 2014).
The system must be able to handle increasing amounts of data and
users without compromising performance or availability. This can
be achieved through techniques such as partitioning, replication,
and clustering. The characteristics of a database system include
data independence, concurrent access, data integrity, security, and
scalability. These characteristics ensure that the database system
is efficient, reliable, and able to handle the demands of modern
applications.
CHAPTER
1
Introduction to Database Systems 19
Figure 1.11.
Illustration of
the distributed
architecture.
1.9.6. Compliance
Many organizations are required to comply with regulatory
requirements such as GDPR, HIPAA, and PCI DSS. Database
systems can help ensure compliance by providing features such
as auditing, logging, and encryption (Wang, 2022).
CHAPTER
1
Introduction to Database Systems 23
1.9.7. Innovation
Database systems provide a foundation for innovation in areas
such as machine learning, artificial intelligence, and the internet
of things (Bradley et al., 2019). By leveraging data stored in a
database, businesses can gain insights into new opportunities,
products, and services.
Overall, the importance of database systems in the modern
world cannot be overstated. They provide a structured way to
manage and analyze data, enabling businesses and organizations
to make informed decisions and stay competitive in a data-driven
world.
ACTIVITY 1.1.
You are tasked with explaining the basic components of a database system to a
group of stakeholders. Describe the various components, such as the data model,
database schema, query language, and database management system, and explain
how they work together to store, manage, and retrieve data.
CHAPTER
1
24 Fundamentals of Database Systems
1.10. SUMMARY
The chapter on Introduction to Database Systems provides an overview of the fundamentals
of database systems. It starts by defining what database systems are and their importance
in the modern world. The chapter then delves into the history of database systems,
highlighting the major milestones that have led to the development of modern database
systems. The chapter also discusses the different components of database systems,
including DDL, DML, DQL, DCL, and DBMS. The discussion on each component provides
a detailed explanation of what it does and its role in the database system.
The chapter also covers data storage and retrieval, with a focus on primary storage,
secondary storage, indexing, query optimization, and query execution. Additionally, the
chapter highlights the key characteristics of database systems, such as data independence,
concurrent access, data integrity, security, and scalability. The architecture of database
systems is also discussed in detail, with an emphasis on the client-server architecture,
tiered architecture, and distributed architecture. Finally, the chapter provides an overview of
query processing and optimization, covering query processing phases, query optimization
techniques, and query execution plans.
REVIEW QUESTIONS
1. Define database systems and explain their importance.
2. Describe the components of database systems and their roles.
3. Explain the different types of data storage in database systems.
4. Discuss the characteristics of database systems and their significance.
5. Compare and contrast the different types of database architecture.
6. Describe the phases of query processing and explain their importance.
7. Explain the techniques used for query optimization.
8. Discuss the role of query execution plans in database systems.
c. Reliability
d. Speed
3. Which of the following is a type of database architecture?
a. Centralized architecture
b. Decentralized architecture
c. Distributed architecture
d. All of the above
4. Which of the following is used to define the structure of a database?
a. Data definition language
b. Data manipulation language
c. Data query language
d. Data control language
5. Which type of storage is volatile in nature?
a. Primary storage
b. Secondary storage
c. Both (a) and (b)
d. None of the above
6. Which of the following is not a phase of query processing?
a. Parsing
b. Optimization
c. Execution
d. Storage
7. Which type of architecture allows for scalability in database systems?
a. Client-server architecture
b. Tiered architecture
c. Distributed architecture
d. All of the above
8. Which of the following is not a characteristic of database systems?
a. Scalability
b. Reliability
c. Compatibility
d. Security
REFERENCES
1. Abadi, D., Boncz, P., Harizopoulos, S., Idreos, S., & Madden, S., (2013). The design
and implementation of modern column-oriented database systems. Foundations and
Trends® in Databases, 5(3), 197–280.
2. Alom, B. M., Henskens, F., & Hannaford, M., (2009). Query processing and optimization
in distributed database systems. IJCSNS, 9(9), 143.
3. Anjard, R. P., (1994). The basics of database management systems (DBMS). Industrial
Management & Data Systems, 94(5), 11–15.
4. Antoshenkov, G., & Ziauddin, M., (1996). Query processing and optimization in oracle
Rdb. The VLDB Journal, 5, 229–237.
5. Anwar, I., (2018). Penerjemahan Teks Bahasa Indonesia Menjadi Data Definition
Language (Ddl) Dengan Penanganan Kalimat Majemuk (2nd edn., pp. 4–10). Doctoral
dissertation, Universitas Komputer Indonesia.
6. Azeroual, O., Saake, G., & Schallehn, E., (2018). Analyzing data quality issues in
research information systems via data profiling. International Journal of Information
Management, 41, 50–56.
7. Barrett, T., & Edgar, R., (2006). [19] gene expression omnibus: Microarray data
storage, submission, retrieval, and analysis. Methods in Enzymology, 411, 352–369.
8. Bernstein, P. A., & Goodman, N., (1981). Concurrency control in distributed database
systems. ACM Computing Surveys (CSUR), 13(2), 185–221.
9. Bertino, E., & Sandhu, R., (2005). Database security-concepts, approaches, and
challenges. IEEE Transactions on Dependable and Secure Computing, 2(1), 2–19.
10. Bradley, D., Merrifield, M., Miller, K. M., Lomonico, S., Wilson, J. R., & Gleason,
M. G., (2019). Opportunities to improve fisheries management through innovative
technology and advanced data systems. Fish and Fisheries, 20(3), 564–583.
11. Brodsky, A., Bhot, M. M., Chandrashekar, M., Egge, N. E., & Wang, X. S., (2009). A
decisions query language (DQL) high-level abstraction for mathematical programming
over databases. In: Proceedings of the 2009 ACM SIGMOD International Conference
on Management of Data (Vol. 1, pp. 1059–1062).
12. Cai, L., & Zhu, Y., (2015). The challenges of data quality and data quality assessment
in the big data era. Data Science Journal, 14(1), 4–10.
13. Chaudhri, A. B., Rashid, A., & Zicari, R., (2003). XML Data Management: Native
XML and XML-Enabled Database Systems (Vol. 4, No. 1, pp. 2–9.). Addison-Wesley
Professional.
14. Chessa, S., & Maestrini, P., (2003). Dependable and secure data storage and retrieval
in mobile, wireless networks. In: DSN (Vol. 2003, pp. 207–216).
15. Connolly, T. M., & Begg, C. E., (2005). Database Systems: A Practical Approach to
Design, Implementation, and Management (2nd edn., pp. 1–15). Pearson Education.
CHAPTER
1
Introduction to Database Systems 27
16. Coronel, C., & Morris, S., (2016). Database systems: Design, implementation, &
management. Cengage Learning, 3(2), 2–8.
17. DeFazio, S., Krishnan, R., Srinivasan, J., & Zeldin, S., (2001). The importance of
extensible database systems for e-commerce. In: Proceedings 17th International
Conference on Data Engineering (Vol. 1, pp. 63–70). IEEE.
18. DeWitt, D., & Gray, J., (1992). Parallel database systems: The future of high
performance database systems. Communications of the ACM, 35(6), 85–98.
19. Dittrich, K. R., Gatziu, S., & Geppert, A., (1995). The active database management
system manifesto: A rule base of ADBMS features. In: Rules in Database Systems:
Second International Workshop, RIDS’95 Glyfada, Athens, Greece, September 25–27,
1995 Proceedings 2 (Vol. 1, pp. 1–17). Springer Berlin Heidelberg.
20. Elmasri, R., & Navathe, S. B., (2006). Database Systems: Models, Languages, Design,
and Application Programming (Vol. 4, No. 1, pp. 7–9). Pearson Education India.
21. El-Mehalawi, M., & Miller, R. A., (2003). A database system of mechanical components
based on geometric and topological similarity. Part I: Representation. Computer-
Aided Design, 35(1), 83–94.
22. Fikes, R., Hayes, P., & Horrocks, I., (2002). DQL-a Query Language for the Semantic
Web (2nd edn., pp. 4–9). Knowledge Systems Laboratory.
23. Ghali, M. J. A., & Abu-Naser, S. S., (2019). ITS for Data Manipulation Language
(DML) Commands Using SQLite (3rd edn., pp. 6–9).
24. Grad, B., & Bergin, T. J., (2009). Guest editors’ introduction: History of database
management systems. IEEE Annals of the History of Computing, 31(4), 3–5.
25. Heanue, J. F., Bashaw, M. C., & Hesselink, L., (1994). Volume holographic storage
and retrieval of digital data. Science, 265(5173), 749–752.
26. Hellerstein, J. M., & Stonebraker, M., (2005). Readings in Database Systems (Vol.
1, pp. 2–5). MIT press.
27. Hurson, A. R., Miller, L. L., Pakzad, S. H., Eich, M. H., & Shirazi, B., (1989).
Parallel architectures for database systems. In: Advances in Computers (Vol. 28,
pp. 107–151). Elsevier.
28. Jäkel, T., Kühn, T., Voigt, H., & Lehner, W., (2014). RSQL-a query language for
dynamic data types. In: Proceedings of the 18th International Database Engineering
& Applications Symposium (Vol. 1, pp. 185–194).
29. Jukic, N., Vrbsky, S., Nestorov, S., & Sharma, A., (2014). Database Systems:
Introduction to Databases and Data Warehouses (Vol. 1, p. 400). Pearson.
30. Kuhlenkamp, J., Klems, M., & Röss, O., (2014). Benchmarking scalability and
elasticity of distributed database systems. Proceedings of the VLDB Endowment,
7(12), 1219–1230.
31. Lam, K. Y., & Kuo, T. W., (2000). Real-Time Database Systems: Architecture and
Techniques (2nd edn., Vol. 593, pp. 4–10). Springer Science & Business Media.
CHAPTER
1
28 Fundamentals of Database Systems
32. Levine, H. G., (1985). Principles of data storage and retrieval for use in qualitative
evaluations. Educational Evaluation and Policy Analysis, 7(2), 169–186.
33. Litwin, W., & Abdellatif, A., (1987). An overview of the multi-database manipulation
language MDSL. Proceedings of the IEEE, 75(5), 621–632.
34. Malik, M., & Patel, T., (2016). Database security-attacks and control methods.
International Journal of Information, 6(1, 2), 175–183.
35. Maryanski, F., Bedell, J., Hoelscher, S., Hong, S., McDonald, L., Peckham, J., &
Stock, D., (1986). The data model compiler: A tool for generating object-oriented
database systems. In: Proceedings on the 1986 International Workshop on Object-
Oriented Database Systems (Vol. 1, pp. 73–84).
36. McLeod, D., & Heimbigner, D., (1980). A federated architecture for database systems.
In: Proceedings of the May 19–22, 1980, National Computer Conference (Vol. 1,
pp. 283–289).
37. Miklau, G., Levine, B. N., & Stahlberg, P., (2007). Securing history: Privacy and
accountability in database systems. In: CIDR (2nd edn., pp. 387–396).
38. Naughton, J., (1985). Data independent recursion in deductive databases. In:
Proceedings of the Fifth ACM SIGACT-SIGMOD Symposium on Principles of Database
Systems (2nd edn., pp. 267–279).
39. Olle, T. W., (2003). Database management system (DBMS). In: Encyclopedia of
Computer Science (Vol. 1, pp. 517–520).
40. Ouzzani, M., & Bouguettaya, A., (2004). Query processing and optimization on the
web. Distributed and Parallel Databases, 15(1), 187–218.
41. Park, H., Pang, R., Parameswaran, A., Garcia-Molina, H., Polyzotis, N., & Widom,
J., (2013). An overview of the deco system: Data model and query language; query
processing and optimization. ACM SIGMOD Record, 41(4), 22–27.
42. Rao, T. R., Mitra, P., Bhatt, R., & Goswami, A., (2019). The big data system,
components, tools, and technologies: A survey. Knowledge and Information Systems,
60(1), 1165–1245.
43. Rawat, B., & Purnama, S., (2021). MySQL database management system (DBMS) on
FTP site LAPAN bandung. International Journal of Cyber and IT Service Management,
1(2), 173–179.
44. Sawyer, P., & Mariani, J. A., (1995). Database systems: Challenges and opportunities
for graphical HCI. Interacting with Computers, 7(3), 273–303.
45. Shaw, S., Vermeulen, A. F., Gupta, A., Kjerrumgaard, D., Shaw, S., Vermeulen, A.
F., & Kjerrumgaard, D., (2016). Data manipulation language (DML). Practical Hive:
A Guide to Hadoop’s Data Warehouse System, 1, 77–98.
46. Sheth, A. P., & Larson, J. A., (1990). Federated database systems for managing
distributed, heterogeneous, and autonomous databases. ACM Computing Surveys
(CSUR), 22(3), 183–236.
CHAPTER
1
Introduction to Database Systems 29
CHAPTER
1
CHAPTER 2
DATABASE
DEVELOPMENT PROCESS
UNIT INTRODUCTION
The main part of software engineering is to subdivide the process of development into
a sequence of steps or stages, and each of these steps emphasizes one feature of the
development. If we collect all of these steps, it is known as the software development
life cycle (SDLC; Vela et al., 2004). A software invention has to move through SDLC until
it cannot be used anymore. Ideally, it is possible to check each phase of the life cycle
whether is correct or not before we move to the next phase.
Learning Objectives
At the end of this chapter, readers will be able to understand:
• Development life cycle or waterfall cycle of the database;
• Database life cycle;
• Requirement gathering as the first phase of development;
• Analysis phase of the database development;
• Logical design database development;
• Implementation of the database development cycle;
• Realizing the design of the development process;
• Populating the database;
• Guiding principles for developing an ER diagram.
32 Fundamentals of Database Systems
Key Terms
• Computer system
• Database
• Design
• Development
• Life cycle
• Logical
• Maintenance
• Requirement
• Waterfall
CHAPTER
2
Database Development Process 33
CHAPTER
2
36 Fundamentals of Database Systems
CHAPTER
2
38 Fundamentals of Database Systems
characteristics, but then again it does not mean that this straight
conversion to SQL tables spontaneously yields an upright database
(Halevi et al., 1995). This initial phase will precisely exemplify the
tables and constrictions preferred to fulfill the conceptual data model
explanation, plus so will fulfill the comprehensiveness and reliability
demands, however, it might be in supple or deal bad usage. The
initial design is formerly flexed to advance the excellence of the
database design. Flexing is a terminology that is envisioned to
internment the concurrent concepts of curving some things for a
dissimilar determination and dwindling facets of that one, such as
it is curved.
CHAPTER
2
42 Fundamentals of Database Systems
Figure 2.5. An
example of the ER
diagram.
ACTIVITY 2.1.
Imagine you are part of a team tasked with developing a database system for a
startup company. Describe the stages involved in the database development process,
including requirements gathering, design, implementation, testing, and maintenance.
CHAPTER
2
44 Fundamentals of Database Systems
2.10. SUMMARY
The chapter development procedure of database delivers an outline of the developing
life series of a database. This chapter encompasses the distinct stages incorporated in
database development, counting requirement assembly, logical design, analysis, realizing
the design, implementation, populating the database, and guiding principle for evolving
an ER diagram. Moreover, there are various stages of database progression and the
strategies for generating an ER diagram.
REVIEW QUESTIONS
1. What is the development life cycle of a database? Explain the different phases
involved in the development process.
2. What is requirement gathering? Why is it important in the database development
process?
3. What is the analysis phase of the database development process? Explain its
significance.
4. What is the logical design stage of the database development process? How is
it different from the physical design phase?
5. What is the implementation phase of the database development cycle? Explain
its importance.
6. What is realizing the design in the database development process? How is it
different from the logical and physical design phases?
b. Analysis
c. Realizing the design
d. Implementation
4. What is the last phase of the database development cycle?
a. Requirement gathering
b. Analysis
c. Design
d. Implementation
5. Which of the following guidelines should be followed while creating an ER
diagram?
a. Use singular nouns for entity names
b. Use plurals for relationship names
c. Use diamonds to represent entities
d. All of the above
REFERENCES
1. Banek, M., Skocir, Z., & Vrdoljak, B., (2005). Logical design of data warehouses
from xml. In: ConTEL (Vol. 5, pp. 289–295).
2. Bassil, Y., (2012). A Simulation Model for the Waterfall Software Development Life
Cycle, 1, 3–6.
3. Batini, C., Lenzerini, M., & Navathe, S. B., (1986). A comparative analysis of
methodologies for database schema integration. ACM Computing Surveys (CSUR),
18(4), 323–364.
4. Bekker, M., Beusmans, J., Keyson, D., & Lloyd, P., (2003). KidReporter: A user
requirements gathering technique for designing with children. Interacting with
Computers, 15(2), 187–202.
5. Bisbal, J., Grimson, J., & Bell, D., (2005). A formal framework for database sampling.
Information and Software Technology, 47(12), 819–828.
6. Chen, P. P. S., (1997). English, Chinese and ER diagrams. Data & Knowledge
Engineering, 23(1), 5–16.
7. Cheng, B., Zhang, J., Hancke, G. P., Karnouskos, S., & Colombo, A. W., (2018).
Industrial cyberphysical systems: Realizing cloud-based big data infrastructures.
IEEE Industrial Electronics Magazine, 12(1), 25–35.
CHAPTER
2
46 Fundamentals of Database Systems
8. Frischknecht, R., Jungbluth, N., Althaus, H. J., Doka, G., Dones, R., Heck, T.,
& Spielmann, M., (2005). The ecoinvent database: Overview and methodological
framework (7 pp). The International Journal of Life Cycle Assessment, 10(1), 3–9.
9. Greene-Colozzi, E. A., Freilich, J. D., & Chermak, S. M., (2021). Developing open-
source databases from online sources to study online and offline phenomena.
Researching Cybercrimes: Methodologies, Ethics, and Critical Approaches (2nd edn.,
pp. 169–190).
10. Halevi, G., Weill, R. D., Halevi, G., & Weill, R. D., (1995). Logical design of a process
plan. Principles of Process Planning: A Logical Approach, 1, 15–35.
11. Hardyanto, W., Purwinarko, A., Sujito, F., & Alighiri, D., (2017). Applying an MVC
framework for the system development life cycle with waterfall model extended. In:
Journal of Physics: Conference Series (Vol. 824, No. 1, p. 012007). IOP Publishing.
12. Higa, K., & Sheng, O. R. L., (1989). An object-oriented methodology for end-user
logical database design: The structured entity model approach. In: [1989] Proceedings
of the Thirteenth Annual International Computer Software & Applications Conference
(Vol. 1, pp. 365–373). IEEE.
13. Holtzblatt, K., & Beyer, H. R., (1995). Requirements gathering: The human factor.
Communications of the ACM, 38(5), 31–32.
14. Joannou, D., Kalawsky, R., Martínez-García, M., Fowler, C., & Fowler, K., (2020).
Realizing the role of permissioned blockchains in a systems engineering lifecycle.
Systems, 8(4), 41–44.
15. Jungbluth, N., (2005). Life cycle assessment of crystalline photovoltaics in the Swiss
ecoinvent database. Progress in Photovoltaics: Research and Applications, 13(5),
429–446.
16. Kalninˆ, J. J., & Fricnoviˆs, G. F., (1979). On the development of an interactive
system for the logical design of discrete devices. In: Software for Computer Control
(Vol. 1, pp. 283–286). Pergamon.
17. Khan, A. A., (1984). A formal technique for the logical design of organizational
information systems (Vol. 1, pp. 5–10). Doctoral dissertation, University of York.
18. Kramer, M., (2018). Best practices in systems development lifecycle: An analyses
based on the waterfall model. Review of Business & Finance Studies, 9(1), 77–84.
19. Masri, K., Parker, D., & Gemino, A., (2008). Using iconic graphics in entity-relationship
diagrams: The impact on understanding. Journal of Database Management (JDM),
19(3), 22–41.
20. Newell, A. F., Carmichael, A., Morgan, M., & Dickinson, A., (2006). The use of
theatre in requirements gathering and usability studies. Interacting with Computers,
18(5), 996–1011.
21. Owens, J. D., (2007). Why do some UK SMEs still find the implementation of
a new product development process problematical? An exploratory investigation.
Management Decision, 1, 2–6.
CHAPTER
2
Database Development Process 47
22. Rastogi, V., (2015). Software development life cycle models-comparison, consequences.
International Journal of Computer Science and Information Technologies, 6(1),
168–172.
23. Ratner, B., (2003). Statistical Modeling and Analysis for Database Marketing: Effective
Techniques for Mining Big Data (Vol. 1, pp. 6–9). CRC Press.
24. Romberg, F. A., (1981). A Logical Design Methodology for Complex Databases Such
as a Manufacturing Operations Database (Vol. 1, pp. 4–8). Southern Methodist
University.
25. Saouter, E., & Hoof, G. V., (2002). A database for the life-cycle assessment of Procter
& gamble laundry detergents. The International Journal of Life Cycle Assessment,
7(1), 103–114.
26. Schwaber, K., (1997). Scrum development process. In: Business Object Design and
Implementation: OOPSLA’95 Workshop Proceedings 16 October 1995, Austin, Texas
(Vol. 1, pp. 117–134). Springer London.
27. Subramanian, G. H., Jiang, J. J., & Klein, G., (2007). Software quality and IS project
performance improvements from software development process maturity and IS
implementation strategies. Journal of Systems and Software, 80(4), 616–627.
28. Teorey, T. J., Lightstone, S. S., Nadeau, T., & Jagadish, H. V., (2011). Database
Modeling and Design: Logical Design (Vol. 3, No. 2, pp. 3–5). Elsevier.
29. Teorey, T. J., Yang, D., & Fry, J. P., (1986). A logical design methodology for relational
databases using the extended entity-relationship model. ACM Computing Surveys
(CSUR), 18(2), 197–222.
30. Trivedi, P., & Sharma, A., (2013). A comparative study between iterative waterfall
and incremental software development life cycle model for optimizing the resources
using computer simulation. In: 2013 2nd International Conference on Information
Management in the Knowledge Economy (Vol. 1, pp. 188–194). IEEE.
31. Vela, B., Acuña, C. J., & Marcos, E., (2004). A model driven approach for XML database
development. In: Conceptual Modeling–ER 2004: 23rd International Conference on
Conceptual Modeling, Shanghai, China, November 8–12, 2004. Proceedings 23 (Vol.
1, pp. 780–794). Springer Berlin Heidelberg.
32. Westfechtel, B., (1999). Models and Tools for Managing Development Processes
(2nd edn., Vol. 1, pp. 8, 9). Springer Science & Business Media.
CHAPTER
2
CHAPTER 3
TYPES OF DATABASES
UNIT INTRODUCTION
Database systems are computer programs that allow users to store, organize, and retrieve
large amounts of data (Güting & Schneider, 1993). There are several different types
of database systems, each with its own strengths and weaknesses. Some of the most
common types of database systems include:
• Hierarchical Databases: These database systems organize data in a tree-like
structure, with each record having one parent and multiple children. Hierarchical
databases are often used in mainframe applications.
• Network Databases: These database systems organize data in a more complex
network-like structure, with each record having multiple parents and children.
Network databases are useful for modeling complex relationships between data
(Albano et al., 1989).
• Relational Databases: These database systems are based on the relational data
model, which organizes data into tables with rows and columns. RDBMSs are
widely used for storing structured data and are popular in applications such as
online transaction processing (OLTP) and business intelligence (BI) (Brodie, 1980).
• Object-Oriented Databases (OODBs): These database systems are designed to
store complex data types such as objects, classes, and inheritance hierarchies.
OODBMSs are often used in object-oriented programming (OOP) languages such
as Java or C++.
• Graph Databases: These database systems are designed to store and query
data that has complex relationships, such as social networks or supply chain
50 Fundamentals of Database Systems
systems. Graph databases use nodes and edges to represent data and can
perform complex queries quickly (Ohori, 1990).
• Document Databases: These database systems store unstructured or semi-
structured data in documents, such as JSON or XML. Document databases are
often used in web applications and content management systems (CMS).
• NoSQL Databases: These database systems are designed to handle large
volumes of unstructured or semi-structured data, such as text, images, or social
media posts. NoSQL database systems are often used in big data applications
or real-time analytics (Schneider, 1997).
Each type of database system has its own unique features and benefits, and choosing
the right system for a particular application requires careful consideration of factors such
as data structure, scalability, performance, and cost.
Learning Objectives
• Define database systems and identify the different types of database systems,
including hierarchical, network, relational, object-oriented, graph, document, and
NoSQL databases.
• Understand the strengths and weaknesses of each type of database system and
their suitability for different applications.
• Explain the relational data model and the basics of RDBMSs.
• Identify the benefits and limitations of using object-oriented databases (OODBs)
in software development.
• Describe the unique features and benefits of graph databases and their use cases.
• Understand the purpose of document databases and their applications in web
development and content management systems (CMS).
• Discuss the advantages and limitations of NoSQL databases in handling unstructured
or semi-structured data and their use in big data applications and real-time analytics.
• Analyze the factors to consider when choosing the appropriate database system
for a particular application, such as data structure, scalability, performance, and
cost.
Key Terms
• Big data
• Data
• Database
• Document
• E-commerce
CHAPTER
3
Types of Databases 51
• Graph
• Hierarchical
• Management
• Model
• Network
• Object-oriented
• Relational
• Social network
CHAPTER
3
52 Fundamentals of Database Systems
Figure 3.1. An
example of the
hierarchical database.
CHAPTER
3
Types of Databases 53
Figure 3.2.
Hierarchy of
networks and
systems in a
generic telecom
infrastructure.
CHAPTER
3
56 Fundamentals of Database Systems
when the underlying data structure changes. This is why they have
been largely replaced by more flexible and scalable database
models, such as relational databases. However, for applications
that require a fixed and predictable data structure, hierarchical
databases can still be an effective and efficient solution.
KEYWORD
3.1.5. Disadvantages of Hierarchical Databases Relational
While hierarchical databases have several advantages in managing database is a
type of database
structured data, they also have some limitations and disadvantages.
that stores and
Some of the key disadvantages of hierarchical databases are
provides access
discussed in subsections.
to data points that
are related to one
3.1.5.1. Limited Flexibility another.
CHAPTER
3
58 Fundamentals of Database Systems
Figure 3.3. An
example of the
network database
model.
Figure 3.4. An
example of the
complex data
relationship.
CHAPTER
3
Types of Databases 61
3.2.2.2. Efficiency
The network database model is highly efficient in terms of data
retrieval, since it uses pointers to quickly navigate between related
records. This makes it a good choice for applications that require
fast access to large amounts of data.
CHAPTER
3
Types of Databases 63
Data entity is One of the main advantages of the network database model is its
an abstraction flexibility. Unlike the hierarchical model, which can only represent
from the physical one-to-many relationships, the network model can represent
implementation of many-to-many relationships between data entities. This makes it
database tables. a good choice for applications where data entities have complex
relationships.
3.2.4.3. Scalability
The network database model is highly scalable, since it allows
for the addition of new data entities without having to modify the
entire database structure. This makes it well-suited to applications
that require frequent updates and modifications.
3.2.4.4. Redundancy
The network database model allows for the redundancy of data,
which can improve data integrity and system reliability (Bader et
al., 2003). In the event that one data entity is lost or damaged,
there may be other copies of the same entity elsewhere in the
database.
3.2.5.1. Complexity
The network database model can be more complex than other
database models, such as the hierarchical model, due to the
KEYWORD
many-to-many relationships between data entities (Padmanabhan
et al., 2008). This complexity can make it more difficult to design Database
and maintain a network database, particularly for applications with administrator is
a large number of data entities. the information
technician who
directs and
3.2.5.2. Lack of Standards
performs all
The network database model lacks a standardized language activities related
for accessing and manipulating data, which can make it more to maintaining
difficult to work with compared to other database models that have a successful
standardized query languages, such as SQL. database
environment.
Figure 3.6.
Schematic of a
relational database.
CHAPTER
3
Types of Databases 69
3.3.2.5. Security
Relational databases provide robust security features that ensure
data is protected from unauthorized access or modification. This
is critical for organizations that store sensitive or confidential data.
3.3.2.6. Integration
Relational databases can be integrated with other systems and
applications, making it easy to share data between different parts
of an organization or with external partners (Stonebraker, 1986).
Overall, relational databases are important in database systems
because they provide a reliable, scalable, and secure way of
storing and managing data that is essential for many organizations
to operate effectively.
3.3.3.1. E-Commerce
Online retailers use relational databases to manage customer
CHAPTER
3
70 Fundamentals of Database Systems
3.3.3.5. Government
Government agencies use relational databases to manage citizen
data, track public services, and analyze trends in social and
economic data. This enables them to make evidence-based policy
decisions and provide better services to citizens.
3.3.3.6. Education
Educational institutions use relational databases to manage student
records, grades, and attendance data (Ogle & Stonebraker, 1995).
This allows them to track student progress, identify areas for
improvement, and provide support to students.
Overall, relational databases have a broad range of applications
in various domains and industries, and their versatility and flexibility
make them an important tool for managing and analyzing data.
CHAPTER
3
Types of Databases 71
3.3.4.3. Flexibility
Relational databases are highly flexible, allowing users to add new
tables, fields, and relationships as needed (Stolte et al., 2002).
This makes it easy to adapt to changing business needs or new
requirements.
3.3.4.4. Scalability
Relational databases are highly scalable and can handle large
amounts of data and users without a significant loss in performance.
This makes it ideal for growing businesses that need to manage
large amounts of data.
3.3.4.5. Security
Relational databases offer strong security features to protect data
from unauthorized access, modification, and theft (Maier, 1983).
This includes access control, data encryption, and data backup
and recovery.
CHAPTER
3
72 Fundamentals of Database Systems
3.3.5.1. Complexity
Relational databases can be complex to design, implement, and
maintain, especially for large-scale systems (Codd, 2007). Managing
the relationships between tables and ensuring data consistency
can be challenging and time-consuming.
3.3.5.2. Performance
Relational databases can become slow and inefficient when dealing
with large amounts of data. Complex queries or joins can take a
long time to execute, leading to slower performance and decreased
productivity (Mishra & Eich, 1992).
3.3.5.3. Cost
Relational databases can be expensive, both in terms of software
licensing and hardware requirements. As the amount of data grows,
businesses may need to invest in more powerful servers or storage
solutions to maintain performance.
CHAPTER
3
74 Fundamentals of Database Systems
CHAPTER
3
Types of Databases 75
CHAPTER
3
Types of Databases 77
KEYWORD
3.4.4. Advantages of Object-Oriented Databases
Complex
data type is a
(OODBs)
transformation
OODBs offer a number of advantages over traditional relational
data type that
databases. Some of the key advantages of OODBs are discussed
represents multiple
data values in
in subsections.
a single column 3.4.4.1. Support for Complex Data Structures
position.
OODBs provide a natural way to represent and manage complex
data structures, including hierarchical, network, and graph data
(Hurson et al., 1993). This makes it easier to develop and maintain
applications that require the management of complex data.
3.4.4.2. Improved Performance
Because OODBs are designed to work with complex data structures,
they can often perform more efficiently than relational databases
when dealing with these structures (Leavitt, 2000). This can result in
faster query performance and improved overall system performance.
3.4.4.3. Flexibility
OODBs are highly flexible, allowing developers to easily add new
data types and modify existing data structures as needed. This
makes it easier to adapt to changing business requirements and
to evolve the database schema over time.
3.4.5.1. Complexity
While OODBs are designed to work with complex data structures,
they can also be more complex to design, develop, and maintain
than traditional relational databases (Gotthard et al., 1992). This
can require more specialized skills and expertise, which can be
a challenge for some organizations.
3.4.5.5. Scalability
While OODBs can be highly flexible and adaptable, they can also
be more difficult to scale than relational databases. This is because
the complex object graphs in an OODB can make it more difficult to
partition data across multiple servers or to distribute queries efficiently.
3.4.5.6. Cost
Finally, OODBs can be more expensive to license and maintain
than traditional relational databases (Kim, 1990). This is because
there are fewer OODBs on the market and because they require
more specialized skills and expertise to work with.
Overall, OODBs are not always the best choice for every
application. While they offer some significant advantages over
traditional relational databases, they also have some significant
drawbacks that need to be considered. Organizations should
carefully weigh the pros and cons of OODBs when making decisions
about database management.
Figure 3.11.
Relationship modeling
in graph database.
3.5.2.2. Flexibility
Graph databases are highly flexible and can be used for a wide
range of applications (Lee et al., 2012). They can handle unstructured
data as well as structured data, which means they can be used KEYWORD
for a wide range of use cases. This makes them a versatile tool Social networks
for data management. are websites
and apps that
3.5.2.3. Performance allow users and
organizations
Graph databases are optimized for handling complex relationships to connect,
and can deliver high performance for applications that require communicate,
real-time query processing. This makes them well-suited for use share information
cases such as fraud detection, recommendation engines, and social and form
networks, where fast query processing is essential. relationships.
3.5.2.4. Scalability
Graph databases are designed to scale horizontally, which means
that they can handle large amounts of data and can grow as data
needs increase (Mendelzon & Wood, 1995). This makes them a
good choice for organizations that need to store and manage large
amounts of data.
Overall, graph databases are an important tool for data
management and analysis, particularly in applications that involve
complex relationships between data elements. By using a graph
database, organizations can gain new insights into their data,
improve decision-making, and deliver better results.
CHAPTER
3
84 Fundamentals of Database Systems
3.5.4.1. Flexibility
Graph databases are highly flexible and can be used to model
a wide variety of data structures, including complex relationships
between entities (ShefaliPatil & Bhatia, 2014). This makes them
ideal for use in applications where data is constantly changing or
evolving.
3.5.4.2. Performance
Graph databases are designed to be highly performant, even when
dealing with large and complex datasets. This is because graph
databases use indexing and caching techniques to retrieve data
quickly, and because they are optimized for querying relationships
between entities.
3.5.4.3. Scalability
Graph databases are highly scalable, meaning that they can handle
large amounts of data and users without sacrificing performance
(Angles et al., 2017). This makes them ideal for use in applications
with high growth potential.
3.5.5.1. Complexity
Graph databases can be more complex to implement and maintain
than other types of databases (Jin et al., 2010). This is because
they require a deeper understanding of graph theory and specialized
query languages, and may require more advanced technical
expertise to manage.
KEYWORD
3.5.5.4. Cost
Semi-structured
Some graph database solutions may be more expensive than data refers to data
other types of databases, which can be a barrier to adoption for that is not captured
smaller organizations or projects. or formatted in
conventional ways.
3.5.5.5. Performance Limitations
While graph databases are designed to be highly performant, their
performance may be limited in some use cases (Batra & Tyagi,
2012). For example, when working with large or complex graphs,
or when performing complex queries that require traversing multiple
relationships.
Overall, while graph databases offer many advantages, they may
not be the best fit for every use case. Organizations considering
using graph databases should carefully evaluate the pros and
cons and determine whether the benefits outweigh the potential
drawbacks.
CHAPTER
3
88 Fundamentals of Database Systems
Figure 3.13.
Illustration of the
NoSQL database.
Figure 3.14.
Illustration of an
example of the
NOSQL database.
CHAPTER
3
Types of Databases 89
CHAPTER
3
90 Fundamentals of Database Systems
3.6.2.1. Scalability
NoSQL databases are designed to handle large amounts of
unstructured and semi-structured data, making them highly scalable
(Zaki, 2014). They can scale horizontally by adding more nodes
to a cluster, allowing them to handle high-traffic websites and
applications with ease.
3.6.2.2. Flexibility
Unlike traditional relational databases, NoSQL databases are
schema-less, which means that they do not require a predefined
schema to store data. This makes it easier to store and retrieve
complex data types, such as graphs, documents, and key-value
pairs.
3.6.2.3. Performance
NoSQL databases are optimized for performance, making them
ideal for high-traffic websites and applications (Moniruzzaman &
Hossain, 2013). They use distributed architectures and caching
KEYWORD techniques to improve query response times and minimize downtime.
Web application
is application 3.6.2.4. Cost-Effective
software that is
accessed using a NoSQL databases are typically open-source and do not require
web browser. expensive licenses or hardware. This makes them a cost-effective
option for businesses and organizations that need to store large
amounts of data.
3.6.2.5. Availability
NoSQL databases are designed to provide high availability and
fault tolerance (Pokorny, 2011). They use techniques such as
replication and sharding to ensure that data is always available,
even in the event of hardware failure or network outages.
Overall, NoSQL databases have become increasingly important
due to their ability to handle big data and scale to meet the
needs of modern computing. They offer flexibility, performance, and
availability, making them a popular choice for web applications,
e-commerce sites, social networks, and other high-traffic websites.
CHAPTER
3
Types of Databases 91
CHAPTER
3
92 Fundamentals of Database Systems
3.6.3.6. Gaming
NoSQL databases are commonly used in gaming applications, which
involve managing large amounts of user data, such as profiles,
preferences, and game progress. These databases can provide
real-time updates and ensure high availability and performance.
3.6.4.1. Scalability
NoSQL databases are designed to scale horizontally, which means
that they can easily handle large amounts of data by adding more
nodes to a cluster. This makes them ideal for applications that
require high levels of scalability, such as social media platforms,
e-commerce websites, and online gaming platforms.
3.6.4.2. Flexibility
NoSQL databases are highly flexible and can easily accommodate
changes in data structures and data types (Han et al., 2011). This
makes them ideal for applications that require frequent updates
and modifications, such as CMS, mobile apps, and IoT devices.
CHAPTER
3
Types of Databases 93
3.6.4.4. Cost-Effective
NoSQL databases are often more cost-effective than traditional
relational databases, as they do not require expensive hardware
or software licenses (Okman et al., 2011). They are also highly
scalable, which means that they can handle large amounts of data
without requiring additional infrastructure.
3.6.4.5. Availability
KEYWORD
Software license
NoSQL databases are designed for high availability, which means
is a document that
that they can continue to operate even if some nodes in the cluster
provides legally
fail (Nayak et al., 2013). This makes them ideal for applications binding guidelines
that require high levels of uptime and reliability, such as online for the use and
banking and e-commerce platforms. distribution of
software.
3.6.4.6. Schema-Less Design
NoSQL databases do not enforce a fixed schema, allowing for a
more flexible data model. This makes it easier to store and access
unstructured or semi-structured data, such as JSON documents.
Overall, the advantages of NoSQL databases make them an
attractive option for many different types of applications, particularly
those that require high levels of scalability, performance, and
availability.
Data breach is a NoSQL databases are relatively new compared to SQL databases,
security violation, which have been around for decades. This means that NoSQL
in which sensitive, databases may not have the same level of maturity or stability
protected or as SQL databases.
confidential data is
copied, transmitted,
viewed, stolen, 3.6.5.5. Limited Community Support
altered or used As NoSQL databases are relatively new, the community support
by an individual around them may be limited (Han et al., 2011). This can make it
unauthorized to do difficult for developers to find resources and solutions when facing
so.
problems.
CHAPTER
3
Types of Databases 95
Figure 3.15.
Illustration of
the document
database.
CHAPTER
3
Types of Databases 97
Figure 3.16.
Illustration of the
content management
system.
3.7.4.2. Scalability
Document databases are highly scalable, both horizontally and
vertically (Clifton & Garcie-Molina, 2000). Horizontal scalability
is achieved by distributing data across multiple servers, while
CHAPTER
3
Types of Databases 99
3.7.4.6. Cost-Effective
Document databases can be less expensive to run than traditional
databases. They require less hardware, and the open-source
versions are often free to use.
3.7.4.7. Availability
Document databases are highly available, with many offering
automatic failover and replication capabilities (Liansheng, 2000).
This ensures that data is always accessible, even in the event of
a server failure.
CHAPTER
3
100 Fundamentals of Database Systems
CHAPTER
3
Types of Databases 101
ACTIVITY 3.1.
You work for a transportation company that manages a large fleet of vehicles and
needs to track the routes, schedules, and maintenance history of each vehicle.
Describe how you would use a graph database to store and manage this data, and
how it would improve performance and efficiency compared to a relational database.
CHAPTER
3
102 Fundamentals of Database Systems
3.8. SUMMARY
The chapter provides an introduction to different types of database systems, including
hierarchical, network, relational, object-oriented, graph, document, and NoSQL databases.
Each database system has its strengths and weaknesses and is suitable for specific
applications based on factors like data structure, scalability, performance, and cost.
Hierarchical databases are often used in mainframe applications, network databases for
modeling complex data relationships, relational databases for structured data in OLTP
and BI, OODBs for complex data types, graph databases for complex relationship data,
document databases for unstructured or semi-structured data in web applications, and
NoSQL databases for handling large volumes of unstructured or semi-structured data in
big data applications or real-time analytics. Selecting the appropriate database system
requires careful consideration of these factors.
REVIEW QUESTIONS
1. What is a database system, and what is its purpose?
2. What are some common types of database systems, and how do they differ from
one another?
3. What are some advantages of using a hierarchical database system, and in what
types of applications is it commonly used?
4. What are some advantages of using a network database system, and in what
types of applications is it commonly used?
5. What is a relational database system, and how does it differ from other types of
database systems?
6. What are some advantages of using a relational database system, and in what
types of applications is it commonly used?
7. What is an object-oriented database system, and in what types of applications
is it commonly used?
8. What is a graph database system, and in what types of applications is it commonly
used?
9. What is a document database system, and in what types of applications is it
commonly used?
10. What is a NoSQL database system, and in what types of applications is it
commonly used?
CHAPTER
3
Types of Databases 103
b. Network databases
c. Relational databases
d. Object-oriented databases
2. Which type of database system is useful for modeling complex relationships
between data?
a. Hierarchical databases
b. Network databases
c. Relational databases
d. Graph databases
3. Which type of database system organizes data into tables with rows and
columns?
a. Hierarchical databases
b. Network databases
c. Relational databases
d. Object-oriented databases
4. Which type of database system is designed to store complex data types
such as objects, classes, and inheritance hierarchies?
a. Hierarchical databases
b. Network databases
c. Relational databases
d. Object-oriented databases
5. Which type of database system is designed to store and query data that has
complex relationships, such as social networks or supply chain systems?
a. Graph databases
b. Document databases
c. NoSQL databases
d. Relational databases
6. Which type of database system stores unstructured or semi-structured data
in documents?
a. Graph databases
b. Document databases
c. NoSQL databases
d. Hierarchical databases
7. Which type of database system is often used in web applications and content
management systems?
a. Graph databases
CHAPTER
3
104 Fundamentals of Database Systems
b. Document databases
c. NoSQL databases
d. Object-oriented databases
8. Which type of database system is designed to handle large volumes of
unstructured or semi-structured data?
a. Hierarchical databases
b. Network databases
c. Relational databases
d. NoSQL databases
9. Which type of database system is widely used for storing structured data
and is popular in applications such as online transaction processing (OLTP)
and business intelligence (BI)?
a. Hierarchical databases
b. Network databases
c. Relational databases
d. Object-oriented databases
10. Which database system uses nodes and edges to represent data and can
perform complex queries quickly?
a. Graph databases
b. Document databases
c. NoSQL databases
d. Hierarchical databases
11. Which database system organizes data in a more complex network-like
structure, with each record having multiple parents and children?
a. Hierarchical databases
b. Network databases
c. Relational databases
d. Object-oriented databases
12. Which type of database system is often used in object-oriented programming
languages such as Java or C++?
a. Hierarchical databases
b. Network databases
c. Relational databases
d. Object-oriented databases
CHAPTER
3
Types of Databases 105
REFERENCES
1. Abiteboul, S., & Hull, R., (1986). Restructuring hierarchical database objects.
Theoretical Computer Science, 62(1, 2), 3–38.
2. Abramova, V., & Bernardino, J., (2013). NoSQL databases: MongoDB vs Cassandra.
In: Proceedings of the International C* Conference on Computer Science and Software
Engineering (Vol. 1, pp. 14–22).
3. AbuSafiya, M., & Mazumdar, S., (2004). Accommodating paper in document databases.
In: Proceedings of the 2004 ACM Symposium on Document Engineering (Vol. 1,
pp. 155–162).
4. Albano, A., Ghelli, G., & Orsini, R., (1989). Types for databases: The Galileo
experience. In: Proceedings of the Second International Workshop on Database
Programming Languages (Vol. 1, pp. 196–206).
5. Alonso, R., & Korth, H. F., (1993). Database system issues in nomadic computing.
In: Proceedings of the 1993 ACM SIGMOD International Conference on Management
of Data (Vol. 1, pp. 388–392).
6. Angles, R., Arenas, M., Barceló, P., Hogan, A., Reutter, J., & Vrgoč, D., (2017).
Foundations of modern query languages for graph databases. ACM Computing
Surveys (CSUR), 50(5), 1–40.
7. Atkinson, M., Dewitt, D., Maier, D., Bancilhon, F., Dittrich, K., & Zdonik, S., (1990).
The object-oriented database system manifesto. In: Deductive and Object-Oriented
Databases (Vol. 1, pp. 223–240). North-Holland.
8. Atzeni, P., & De Antonellis, V., (1993). Relational Database Theory (Vol. 1, pp. 2–5).
Benjamin-Cummings Publishing Co., Inc.
9. Bader, G. D., Betel, D., & Hogue, C. W., (2003). BIND: The biomolecular interaction
network database. Nucleic Acids Research, 31(1), 248–250.
10. Banerjee, J., Hsiao, D. K., & Ng, F. K., (1980). Database transformation, query
translation, and performance analysis of a new database computer in supporting
hierarchical database management. IEEE Transactions on Software Engineering,
(1), 91–109.
11. Batra, S., & Tyagi, C., (2012). Comparative analysis of relational and graph databases.
International Journal of Soft Computing and Engineering (IJSCE), 2(2), 509–512.
12. Beeri, C., (1990). Formal models for object-oriented databases. In: Deductive and
Object-Oriented Databases (Vol. 1, pp. 405–430). North-Holland.
13. Bernstein, P. A., (1998). Repositories and object-oriented databases. ACM SIGMOD
Record, 27(1), 88–96.
CHAPTER
3
106 Fundamentals of Database Systems
14. Bertino, E., & Martino, L., (1991). Object-oriented database management systems:
Concepts and issues. Computer, 24(4), 33–47.
15. Bhat, U., & Jadhav, S., (2010). Moving towards non-relational databases. International
Journal of Computer Applications, 1(13), 40–47.
16. Black, J., Ellis, T., & Makris, D., (2004). A hierarchical database for visual surveillance
applications. In: 2004 IEEE International Conference on Multimedia and Expo (ICME)
(IEEE Cat. No. 04TH8763) (Vol. 3, pp. 1571–1574). IEEE.
17. Blasgen, M. W., & Eswaran, K. P., (1977). Storage and access in relational data
bases. IBM Systems Journal, 16(4), 363–377.
18. Bordoloi, S., & Kalita, B., (2013). Designing graph database models from existing
relational databases. International Journal of Computer Applications, 74(1), 2–7.
19. Bouaziz, S., Nabli, A., & Gargouri, F., (2019). Design a data warehouse schema
from document-oriented database. Procedia Computer Science, 159, 221–230.
20. Bouganim, L., Florescu, D., & Valduriez, P., (1996). Dynamic Load Balancing in
Hierarchical Parallel Database Systems (Doctoral Dissertation, INRIA), 3(1), 5–10.
21. Brodie, M. L., (1980). The application of data types to database semantic integrity.
Information Systems, 5(4), 287–296.
22. Castellana, V. G., Morari, A., Weaver, J., Tumeo, A., Haglin, D., Villa, O., & Feo,
J., (2015). In-memory graph databases for web-scale data. Computer, 48(3), 24–35.
23. Cellary, W., & Jomier, G., (1990). Consistency of versions in object-oriented databases.
In: VLDB (Vol. 90, pp. 432–41).
24. Chandra, D. G., (2015). BASE analysis of NoSQL database. Future Generation
Computer Systems, 52(1), 13–21.
25. Chen, H., & Lynch, K. J., (1992). Automatic construction of networks of concepts
characterizing document databases. IEEE Transactions on Systems, Man, and
Cybernetics, 22(5), 885–902.
26. Chou, T. S., Yen, K. K., & Luo, J., (2008). Network intrusion detection design using
feature selection of soft computing paradigms. International Journal of Computer
and Information Engineering, 2(11), 3722–3734.
27. Chung, W. Y., Yu, P. S., & Huang, C. J., (2013). Cloud computing system based
on wireless sensor network. In: 2013 Federated Conference on Computer Science
and Information Systems (Vol. 1, pp. 877–880). IEEE.
28. Clifton, C., & Garcie-Molina, H., (2000). The design of a document database. In:
Proceedings of the ACM Conference on Document Processing Systems (Vol. 1, pp.
125–134).
29. Codd, E. F., (2007). Relational database: A practical foundation for productivity. In:
ACM Turing Award Lectures (Vol. 1, p. 1981).
30. De Almeida, V. T., & Güting, R. H., (2005). Supporting uncertainty in moving objects
in network databases. In: Proceedings of the 13th Annual ACM International Workshop
on Geographic Information Systems (Vol. 1, pp. 31–40).
CHAPTER
3
Types of Databases 107
31. De Caluwe, R., (1997). Fuzzy and Uncertain Object-Oriented Databases: Concepts
and Models (Vol. 13. Pp. 2–9). World Scientific.
32. Debrouvier, A., Parodi, E., Perazzo, M., Soliani, V., & Vaisman, A., (2021). A model
and query language for temporal graph databases. The VLDB Journal, 30(5), 825–858.
33. Deng, J., Dong, W., Socher, R., Li, L. J., Li, K., & Fei-Fei, L., (2009). ImageNet: A
large-scale hierarchical image database. In: 2009 IEEE Conference on Computer
Vision and Pattern Recognition (Vol. 1, pp. 248–255). IEEE.
34. Deniša, M., & Ude, A., (2015). Synthesis of new dynamic movement primitives through
search in a hierarchical database of example movements. International Journal of
Advanced Robotic Systems, 12(10), 137.
35. DeWitt, D. J., Futtersack, P., Maier, D., & Velez, F., (1990). A Study of Three
Alternative Workstation-Server Architectures for Object Oriented Database Systems
(Vol. 1, pp. 2–9). University of Wisconsin-Madison Department of Computer Sciences.
36. Domdouzis, K., Lake, P., & Crowther, P., (2021). Hierarchical databases. In: Concise
Guide to Databases: A Practical Introduction (Vol. 1, pp. 205–212). Cham: Springer
International Publishing.
37. Dunham, M. H., & Helal, A., (1995). Mobile computing and databases: Anything
new? ACM SIGMOD Record, 24(4), 5–9.
38. Dy-Liacco, T. E., (1994). Modern control centers and computer networking. IEEE
Computer Applications in Power, 7(4), 17–22.
39. Gavish, B., & Pirkul, H., (1986). Computer and database location in distributed
computer systems. IEEE Transactions on Computers, 35(07), 583–590.
40. Gotthard, W., Lockemann, P. C., & Neufeld, A., (1992). System-guided view integration
for object-oriented databases. IEEE Transactions on Knowledge and Data Engineering,
4(1), 1–22.
41. Gray, P. M., Kulkarni, K. G., & Paton, N. W., (1992). Object-Oriented Databases: A
Semantic Data Model Approach (Vol. 1, pp. 2–8). Prentice-Hall, Inc.
42. Güting, R. H., & Schneider, M., (1993). Realms: A foundation for spatial data types in
database systems. In: Advances in Spatial Databases: Third International Symposium,
SSD’93 Singapore, June 23–25, 1993 Proceedings 3 (Vol. 1, pp. 14–35). Springer
Berlin Heidelberg.
43. Ha, M., & Shichkina, Y., (2022). Translating a distributed relational database to a
document database. Data Science and Engineering, 7(2), 136–155.
44. Han, J., Haihong, E., Le, G., & Du, J., (2011). Survey on NoSQL database. In: 2011
6th International Conference on Pervasive Computing and Applications (Vol. 1, pp.
363–366). IEEE.
45. Han, J., Song, M., & Song, J., (2011). A novel solution of distributed memory NoSQL
database for cloud computing. In: 2011 10th IEEE/ACIS International Conference on
Computer and Information Science (Vol. 1, pp. 351–355). IEEE.
CHAPTER
3
108 Fundamentals of Database Systems
46. Haseeb, A., & Pattun, G., (2017). A review on NoSQL: Applications and challenges.
International Journal of Advanced Research in Computer Science, 8(1), 2–6.
47. Hesse, B. W., Sproull, L. S., Kiesler, S. B., & Walsh, J. P., (1993). Returns to science:
Computer networks in oceanography. Communications of the ACM, 36(8), 90–101.
48. Ho, J. S., & Akyildiz, I. F., (1997). Dynamic hierarchical database architecture for
location management in PCS networks. IEEE/ACM Transactions on Networking,
5(5), 646–660.
49. Hsu, M., & Madnick, S. E., (1983). Hierarchical database decomposition: A technique
for database concurrency control. In: Proceedings of the 2nd ACM SIGACT-SIGMOD
Symposium on Principles of Database Systems (Vol. 1, pp. 182–191).
50. Hurson, A. R., Pakzad, S. H., & Cheng, J. B., (1993). Object-oriented database
management systems: Evolution and performance issues. Computer, 26(2), 48–58.
51. Imieliński, T., & Lipski, Jr. W., (1984). Incomplete information in relational databases.
Journal of the ACM (JACM), 31(4), 761–791.
52. Indermühle, E., Liwicki, M., & Bunke, H., (2010). IAMonDo-database: An online
handwritten document database with non-uniform contents. In: Proceedings of the 9th
IAPR International Workshop on Document Analysis Systems (Vol. 1, pp. 97–104).
53. Ipeirotis, P. G., & Gravano, L., (2002). Distributed search over the hidden web:
Hierarchical database sampling and selection. In: VLDB’02: Proceedings of the 28th
International Conference on Very Large Databases (Vol. 1, pp. 394–405). Morgan
Kaufmann.
54. Jaiswal, G., & Agrawal, A. P., (2013). Comparative analysis of relational and graph
databases. IOSR Journal of Engineering (IOSRJEN), 3(8), 25–27.
55. Jatana, N., Puri, S., Ahuja, M., Kathuria, I., & Gosain, D., (2012). A survey and
comparison of relational and non-relational database. International Journal of
Engineering Research & Technology, 1(6), 1–5.
56. Jin, R., Hong, H., Wang, H., Ruan, N., & Xiang, Y., (2010). Computing label-
constraint reachability in graph databases. In: Proceedings of the 2010 ACM SIGMOD
International Conference on Management of Data (Vol. 1, pp. 123–134).
57. Jindal, G., & Bali, S., (2012). Hierarchical model leads to the evolution of relational
model. International Journal of Engineering and Management Research (IJEMR),
2(4), 11–14.
58. Joseph, J. V., Thatte, S. M., Thompson, C. W., & Wells, D. L., (1991). Object-oriented
databases: Design and implementation. Proceedings of the IEEE, 79(1), 42–64.
59. Joshi, J. B., Li, Z. K., Fahmi, H., Shafiq, B., & Ghafoor, A., (2002). A model for
secure multimedia document database system in a distributed environment. IEEE
Transactions on Multimedia, 4(2), 215–234.
60. Jouili, S., & Vansteenberghe, V., (2013). An empirical comparison of graph databases.
In: 2013 International Conference on Social Computing (Vol. 1, pp. 708–715). IEEE.
61. Kawell, Jr. L., Beckhardt, S., Halvorsen, T., Ozzie, R., & Greif, I., (1988). Replicated
CHAPTER
3
Types of Databases 109
CHAPTER
3
110 Fundamentals of Database Systems
78. Meier, A., Dippold, R., Mercerat, J., Muriset, A., Untersinger, J. C., Eckerlin, R., &
Ferrara, F., (1994). Hierarchical to relational database migration. IEEE Software,
11(3), 21–27.
79. Meier, A., Kaufmann, M., Meier, A., & Kaufmann, M., (2019). NoSQL databases. SQL
& NoSQL Databases: Models, Languages, Consistency Options and Architectures
for Big Data Management, 1, 201–218.
80. Membrey, P., Plugge, E., Hawkins, T., & Hawkins, D., (2010). The Definitive Guide
to MongoDB: The NoSQL Database for Cloud and Desktop Computing (Vol. 1, pp.
3–8). Springer.
81. Mendelzon, A. O., & Wood, P. T., (1995). Finding regular simple paths in graph
databases. SIAM Journal on Computing, 24(6), 1235–1258.
82. Mishra, P., & Eich, M. H., (1992). Join processing in relational databases. ACM
Computing Surveys (CSUR), 24(1), 63–113.
83. Moffat, A., Zobel, J., & Sharman, N., (1997). Text compression for dynamic document
databases. IEEE Transactions on Knowledge and Data Engineering, 9(2), 302–313.
84. Moniruzzaman, A. B. M., & Hossain, S. A., (2013). NoSQL Database: New Era of
Databases for Big Data Analytics-Classification, Characteristics and Comparison
(Vol. 1, pp. 4–9).
85. Moszer, I., Glaser, P., & Danchin, A., (1995). SubtiList: A relational database for the
Bacillus subtilis genome. Microbiology, 141(2), 261–268.
86. Murty, R., Chandra, R., Moscibroda, T., & Bahl, P., (2011). Senseless: A database-
driven white spaces network. IEEE Transactions on Mobile Computing, 11(2), 189–203.
87. Nakada, H., Sato, M., & Sekiguchi, S., (1999). Design and implementations of Ninf:
Towards a global computing infrastructure. Future Generation Computer Systems,
15(5, 6), 649–658.
88. Navarro, G., & Baeza-Yates, R., (1997). Proximal nodes: A model to query document
databases by content and structure. ACM Transactions on Information Systems
(TOIS), 15(4), 400–435.
89. Nayak, A., Poriya, A., & Poojary, D., (2013). Type of NOSQL databases and its
comparison with relational databases. International Journal of Applied Information
Systems, 5(4), 16–19.
90. Nicklin, P. J., Powell, G. H., & Hollings, J. P., (1985). Hierarchical data management
for structural analysis. Engineering with Computers, 1, 45–54.
91. O’Gorman, L., & Kasturi, R., (1995). Document Image Analysis (Vol. 39, pp. 3–9).
Los Alamitos: IEEE Computer Society Press.
92. Ogle, V. E., & Stonebraker, M., (1995). Chabot: Retrieval from a relational database
of images. Computer, 28(9), 40–48.
93. Ohori, A., (1990). Semantics of types for database objects. Theoretical Computer
Science, 76(1), 53–91.
94. Okman, L., Gal-Oz, N., Gonen, Y., Gudes, E., & Abramov, J., (2011). Security issues
CHAPTER
3
Types of Databases 111
CHAPTER
3
112 Fundamentals of Database Systems
108. Sato, M., Nakada, H., Sekiguchi, S., Matsuoka, S., Nagashima, U., & Takagi, H.,
(1997). Ninf: A network-based information library for global world-wide computing
infrastructure. In: HPCN Europe (Vol. 1225, pp. 491–502).
109. Schindler, T., (2018). Anomaly Detection in Log Data Using Graph Databases and
Machine Learning to Defend Advanced Persistent Threats (Vol. 1, pp. 4–9).
110. Schneider, M., (1997). Spatial Data Types for Database Systems: Finite Resolution
Geometry for Geographic Information Systems (Vol. 1, pp. 5–9). Berlin, Heidelberg:
Springer Berlin Heidelberg.
111. ShefaliPatil, G., & Bhatia, A., (2014). Graph Databases: An Overview (Vol. 2, pp.
657–660). 1Student, ME Computers, Terna College of Engg., Navi Mumbai.
112. Shimpi, D., & Chaudhari, S., (2012). An overview of graph databases. In: IJCA
Proceedings on International Conference on Recent Trends in Information Technology
and Computer Science (Vol. 1, pp. 16–22).
113. Shokoufandeh, A., Macrini, D., Dickinson, S., Siddiqi, K., & Zucker, S. W., (2005).
Indexing hierarchical structures using graph spectra. IEEE Transactions on Pattern
Analysis and Machine Intelligence, 27(7), 1125–1140.
114. Sicari, S., Rizzardi, A., & Coen-Porisini, A., (2022). Security&privacy issues and
challenges in NoSQL databases. Computer Networks, 1, 108–828.
115. Silberschatz, A., & Kedem, Z., (1980). Consistency in hierarchical database systems.
Journal of the ACM (JACM), 27(1), 72–80.
116. Singh, M., & Kaur, K., (2015). SQL2Neo: Moving health-care data from relational
to graph databases. In: 2015 IEEE International Advance Computing Conference
(IACC) (Vol. 1, pp. 721–725). IEEE.
117. Stefanidis, K., Drosou, M., & Pitoura, E., (2009). You may also like results in relational
databases. In: Proceedings International Workshop on Personalized Access, Profile
Management and Context Awareness: Databases (Vol. 1, pp. 5–7). Lyon, France.
118. Stolte, C., Tang, D., & Hanrahan, P., (2002). Polaris: A system for query, analysis,
and visualization of multidimensional relational databases. IEEE Transactions on
Visualization and Computer Graphics, 8(1), 52–65.
119. Stonebraker, M., (1986). The INGRES Papers: Anatomy of a Relational Database
System (Vol. 1, pp. 8–10). Addison-Wesley Longman Publishing Co., Inc.
120. Tangorra, F., & Chiarolla, D., (1995). A methodology for reverse engineering hierarchical
databases. Information and Software Technology, 37(4), 225–231.
121. Tauro, C. J., Aravindh, S., & Shreeharsha, A. B., (2012). Comparative study of the
new generation, agile, scalable, high performance NOSQL databases. International
Journal of Computer Applications, 48(20), 1–4.
122. Teorey, T. J., Yang, D., & Fry, J. P., (1986). A logical design methodology for relational
databases using the extended entity-relationship model. ACM Computing Surveys
(CSUR), 18(2), 197–222.
CHAPTER
3
Types of Databases 113
123. Tsichritzis, D. C., & Lochovsky, F. H., (1976). Hierarchical data-base management:
A survey. ACM Computing Surveys (CSUR), 8(1), 105–123.
124. Vargo, C. G., Brown, C. E., & Swierenga, S. J., (1992). An evaluation of computer-
supported backtracking in a hierarchical database. In: Proceedings of the Human
Factors Society Annual Meeting (Vol. 36, No. 4, pp. 356–360). Sage CA: Los Angeles,
CA: SAGE Publications.
125. Walker, J. H., (1988). Supporting document development with Concordia. Computer,
21(1), 48–59.
126. Wells, D. L., Blakeley, J. A., & Thompson, C. W., (1992). Architecture of an open
object-oriented database management system. Computer, 25(10), 74–82.
127. Wood, P. T., (2012). Query languages for graph databases. ACM SIGMOD Record,
41(1), 50–60.
128. Wu, C. H., & Chang, T. C., (1991). Protein classification using a neural network
database system. In: Proceedings of the Conference on Analysis of Neural Network
Applications (Vol. 1, pp. 29–41).
129. Wuu, G. T., & Dayal, U., (1992). A uniform model for temporal object-oriented
databases. In: 1992 Eighth International Conference on Data Engineering (Vol. 1,
pp. 584–585). IEEE Computer Society.
130. Zaki, A. K., (2014). NoSQL databases: New millennium database for big data, big
users, cloud computing and its security challenges. International Journal of Research
in Engineering and Technology (IJRET), 3(15), 403–409.
131. Zand, M., Collins, V., & Caviness, D., (1995). A survey of current object-oriented
databases. ACM SIGMIS Database: The Database for Advances in Information
Systems, 26(1), 14–29.
132. Zantout, H., & Marir, F., (1999). Document management systems from current
capabilities towards intelligent information retrieval: An overview. International Journal
of Information Management, 19(6), 471–484.
133. Zdonik, S. B., & Maier, D., (1990). Readings in Object-Oriented Database Systems
(Vol. 1, pp. 2–7). Morgan Kaufmann.
134. Zhang, Z. J., (2017). Graph databases for knowledge management. IT Professional,
19(6), 26–32.
CHAPTER
3
CHAPTER 4
DATABASE MODELING
UNIT INTRODUCTION
Keeping detailed records is essential for every company. Due to the growing importance
of data management in today’s economy, a sizable portion of the global computing
infrastructure is devoted to this task (Hull & King, 1987).
Almost every industry nowadays uses some form of database. There are databases for
storing everything from emails and contacts to sales figures and bank details. The search
continues for effective ways to archive less-structured data, such as domain expertise.
Relational databases and the language used in SQL will be covered in depth in a
subsequent essay. In this introduction, we will cover some of the fundamentals of the
technology, with a highlight on normalizing databases.
Edgar Frank Codd (nearly always referred to as E. F. Codd in practical literature)
initially introduced the idea of relational databases in the IBM research report RJ599,
on August 19, 1969. However, “A Relational Model of Data for Massive Shared Data
Banks,” issued in Communications of the ACM, is the work that is typically regarded as
the foundation of this technology (Angles & Gutierrez, 2008). Online access to the entire
article is limited to its initial section.
For relational database implementations, additional writings by E. F. Codd from the
1970s and 1980s are still regarded as canon. On October 14, 1985, and October 21, 1985,
respectively, two Computer world articles titled “Is Your DBMS Actually Relational?” and
“Does Your DBMS Operate by the Rules?” presented his well-known “Twelve Rules for
Relational Databases.” The 12 rules, which he originally issued in his book “The Relational
116 Fundamentals of Database Systems
Model for Database Management, Version 2,” have subsequently been expanded, and
there are now 333 of them (Ma, 2007).
In order to describe, control, and question the data in the database, which is conveyed
as a string of characters, it is necessary to have a language that complies with all 12 of
Codd’s rules. All of the top relational database providers have embraced the language,
known as SQL, which was first created at the research division of IBM (originally in
Yorktown Heights, New York, and then in San Jose, California) (Teorey et al., 2011).
Structured Query Language was what the acronym SQL originally stood for. SEQUEL is
short for Sequential English Query Language and was the name of the first commercially
available language implementation, which was a component of IBM’s SEQUEL/DS product.
For legal concerns, the name was altered after sometime. The pronunciation “see-quell”
is therefore used by many veteran database developers (Peckham & Maryanski, 1988).
As an ANSI/ISO standard, SQL has been accepted. Despite being updated in 1999
(sometimes referred to as SQL99 or SQL3), the majority of suppliers still do not adhere
to the 1992 version of the customary in full. Because the 1992 standard is shorter and
easier for users to reference, and because only few of the 1999 explicit necessities are
usually applied at this time, it might be a preferable place to start while learning the
language (Figure 4.1).
Learning Objectives
At the end of this chapter, readers will be able to:
• Define data modeling and its importance in database design.
• Explain the entity relationship model and how it represents the relationships
between data objects.
CHAPTER
4
Database Modeling 117
• Describe the part of data modeling in the larger context of database design.
• Identify data objects and their associations using the entity association model.
• Develop a basic schema for a database using the entity relationship model.
• Refine the entity relationship diagram by adding detail and clarity.
• Understand the purpose and function of primary and foreign keys in a database
schema.
• Add attributes to the entity relationship model to more accurately represent the
data objects.
• Define generalization hierarchies and how they can be used to simplify complex
data relationships.
• Implement data integrity rules to ensure data consistency and accuracy.
• Explain the relational model and how it relates to the entity relationship model.
Key Terms
• Adding attributes
• Data modeling
• Data objects
• Database design
• Diagram
• Entity relationship model
• Foreign keys
• Generalization hierarchies
• Primary keys
• Refining
• Schema
CHAPTER
4
118 Fundamentals of Database Systems
4.1.1. Methodology
Entity-relationship (ER) method and object model are the two main
approaches used to design a data model. ER theory is applied in
this text (Figure 4.2).
4.2.2. Entities
The main data object that has to have information collected on is
an entity. Entities often consist of recognizable notions that might
be either abstract or concrete, such as individuals, locations,
objects, or events that are relevant to the database (Chen, 1977).
Employees, projects, and invoices are a few instances of entities in
more detail. The relational paradigm compares an entity to a table.
There are two categories of entities: independent and rely on.
A self-identifying object is one that do not depend on another. A
dependent unit is one whose identification depends on another.
An entity’s individual occurrences are referred to as entity
occurrences or instances. A row in a relational table and an
occurrence are equivalent.
CHAPTER
4
Database Modeling 123
CHAPTER
4
124 Fundamentals of Database Systems
4.4.1. Entities
An entity can be described in many different ways, such as “any
distinct place, place, thing, concept, or event about which info is
conserved.”
A distinguishing identifier for anything every distinct article that
is to be exemplified in a database is referred to as “any unique
object that is to be characterized in a database” (e.g., supplier,
employee, machine tool, airline seat, utility pole, etc.) (Sezer et
al., 2017). Certain properties are kept for each entity type.
Common ideas concerning entities appear in these definitions:
• A thing, notion, or item is an entity. The connections
between two or more items can, however, occasionally be
represented as entities. Associative entities are the name
for this kind of thing (Bhavsar & Ganatra, 2012).
• Entities are things that have a descriptive description.
CHAPTER
4
Database Modeling 127
4.4.2. Attributes
Data objects known as attributes either describe or identify entities.
Key qualities are those that allow for entity identification. The term
“non-key attributes” refers to qualities that characterize an entity
(Clarkson et al., 1998). In a later section, important characteristics
CHAPTER
4
128 Fundamentals of Database Systems
4.5.1. Relationships
Relationships are linkages that connect different things. A verb
connecting two or more elements typically denotes a relationship.
Employees are given tasks to work on, for instance.
Once connections are found, they should be categorized
according to cardinality, direction, dependence, optionality. The
definition of the relations may lead to the removal of some
relationships and the addition of others. The number of occurrences
of one entity that are related to one instance of another is known
as the cardinality, which quantifies the relationships between things
(Van Winden et al., 2016). Think about the existence of a single
instance of each entity to calculate the cardinality. Then, ascertain
how many distinct examples of the second item may be connected
to the first. Reverse the entities and run this analysis once more
(Figure 4.7).\
Consider this, each project has at least two employees allocated
to it, and no employee may be dispensed to more than three
projects at one time.
The cardinality of the association between the projects and the
employees in this instance is two, but it is three for the relationship
CHAPTER
4
130 Fundamentals of Database Systems
CHAPTER
4
Database Modeling 131
Figure 4.11.
Schematic of binary
relationship.
4.6.2. One-To-One
KEYWORD
Example of binary relationships in Figure 4.11(A) demonstrates a
case of a one-to-one figure (Baghdadi, 2006). Understanding the Business rules
figure from left to rightward signify the association every worker describe the
is allotted a workstation. operations,
definitions and
For the reason that every single employee must have a constraints that
workstation, the sign for compulsory existence, in this situation apply to an
the crossbar is positioned following to the WORKSTATION entity. organization.
Interpretating from right to left, the figure displays that not entire
workstation are allotted to personnel.
This state may reveal that more or less workstations are
reserved for spares or for lends. Consequently, we custom the sign
for noncompulsory existence, the circle, following to EMPLOYEE.
The existence and cardinality of an association must be resultant
from the “business rules” of the institute. For instance, if entire
workstations possessed by an institute were allotted to employees,
at that time the circle would be substituted by a crossbar to
signpost compulsory presence. One-to-one relations are infrequently
CHAPTER
4
136 Fundamentals of Database Systems
4.6.3. One-To-Many
Figure 4.11(B) expresses an illustration of a one-to-many association
between PROJECT and DEPARTMENT (Burgin & Mikkilineni,
2021). In this diagram, a DEPARTMENT is deliberated the parent
article though PROJECT is the child. Interpretation from leftward
to right, the figure characterizes sections may be accountable for
numerous projects.
The optionality of the associations reveals the “business rule”
that not every department in the institute will be answerable for
handling projects. Reading from right to left, the diagram tells
us that every project must be the responsibility of exactly one
department.
Manage many-to-
many data relations
by implementing 4.6.4. Many-To-Many
junction tables
that efficiently link Figure 4.11(C) expresses a many-to-many association between
multiple data entities. PROJECT and EMPLOY (Brunette et al., 2013). A worker might be
allotted to numerous projects; each project needs many employee.
Remind that the link among EMPLOYEE and PROJECT is
voluntary as, at a certain time, and worker may not be allotted to
a project. Conversely, the association between the PROJECT and
EMPLOYEE is compulsory because a project requisite at least two
employees allotted.
Many-To-Many associations can be utilized in the preliminary
recruiting of the model but ultimately must be converted into two
one-to-numerous relationships (Soylu & De Causmaecker, 2009).
The conversion is obligatory because many-to-many relations
can’t be signified by the interpersonal model. The procedure
for determining many-to-many relationships is discoursed in the
subsequent section.
Figure 4.14.
Schematic of
removing redundant
relationship.
CHAPTER
4
Database Modeling 143
CHAPTER
4
144 Fundamentals of Database Systems
CHAPTER
4
Database Modeling 145
01 03 A Programming
01 04 A Tuning
02 01 B Analysis
CHAPTER
4
Database Modeling 147
4.10.1. Description
A generality hierarchy is a logical arrangement of items with related
characteristics. It is a potent and popular technique for conveying
shared traits among things while maintaining their distinctions. It
is the association of an entity with one or more abridged forms.
Each refined form is referred to as a subtype, while the entity KEYWORD
being advanced is referred to as the supertype. When:
Generalization
• A lot of things seem to be of the same type and hierarchy connects
generalization hierarchies should be utilized; a superclass
• When attributes are replicated across several entities; and one or more
subclasses,
• When the model is dynamic (McCarthy, 1982).
representing a
Detailed hierarchies reduce the amount of entities in the specialization of
model, which simplifies it and increases model stability by allowing the superclass.
modifications to only be made to objects relevant to the change.
CHAPTER
4
148 Fundamentals of Database Systems
4.10.4. Rules
Generalization hierarchies’ main tenet is that any instance of an
entity belonging to the supertype must also occur in at least one
instance of the subtype, and vice versa.
There can only be one generalization hierarchy that includes
subtypes. In other words, a subtype can only be associated to one
supertype. The supertype for one hierarchy might be the subtype
for another, allowing generalization hierarchies to be layered.
Subtypes are not always the children in relationships; they can
be the parent entity (Michalski, 1983). The subtype would receive
two primary keys if this were permitted.
KEYWORD
Entity integrity 4.11. ADDING DATA INTEGRITY RULES
ensures that there
are no duplicate Any of the pillars of the interactive pattern is data reliability. Simply
records within the said, data integrity denotes to the constancy and correctness of
table and that the the data standards in the data-base. Entity and the referential
field that identifies integrity rules in the interpersonal model are used to enforce
each record within data integrity (Zhang et al., 2019). Although not a component of
the table is unique the relational architecture, the majority of database software uses
and never null. domain information to guarantee attribute integrity.
the distant key values are derived is the parental, and the entity
comprising the distant key is the child, or reliant.
Some insert and delete rules must be taken into account when
adding or removing data from the database in directive to ensure
referential integrity among the parent and child.
CHAPTER
4
150 Fundamentals of Database Systems
4.11.7. Domains
A legitimate collection of values for a characteristic is referred to
as a domain, and it ensures that values from inserts or updates
make sense. The following domain information should be assigned
to each characteristic in the model:
1. Data Type: Integer, decimal, and character data types are
CHAPTER
4
Database Modeling 151
ACTIVITY 4.1.
You are tasked with designing a database system for a large hospital network that
will store patient information, medical records, and billing data. Describe how you
would use database modeling techniques, such as entity-relationship diagrams, to
design an efficient and scalable database structure.
CHAPTER
4
Database Modeling 153
4.13. SUMMARY
Database modelling, or the act of developing a conceptual model of a database, is
explored in length in the chapter. It starts with a brief introduction to data modelling and
its significance in developing a database structure. The entity relationship model, which
depicts connections between data objects, is next presented in this chapter. Data object
and relationship discovery, schema construction, and ERD refinement are also discussed
in this chapter. Later, the chapter dives into the value of primary and foreign keys in a
database. The definition of generalization hierarchies and the addition of characteristics
to the entity relationship model are also covered. Finally, a brief introduction to relational
models and data integrity rules rounds off this chapter.
REVIEW QUESTIONS
1. What is the entity relationship model and how is it used in database modeling?
2. How do you identify data objects and relationships in the entity relationship model?
3. What is the role of primary and foreign keys in a database schema?
4. How do you refine the entity relationship diagram?
5. What are generalization hierarchies and how are they used in database modeling?
6. What are data integrity rules and why are they important in a database schema?
7. What is the relational model and how does it relate to the entity relationship
model?
CHAPTER
4
154 Fundamentals of Database Systems
CHAPTER
4
Database Modeling 155
REFERENCES
1. Angles, R., & Gutierrez, C., (2008). Survey of graph database models. ACM Computing
Surveys (CSUR), 40(1), 1–39.
2. Aracic, I., Gasiunas, V., Mezini, M., & Ostermann, K., (2006). An overview of caesarJ.
Transactions on Aspect-Oriented Software Development I, 1, 135–173.
3. Baghdadi, Y., (2006). Reverse engineering relational databases to identify and specify
basic web services with respect to service-oriented computing. Information Systems
Frontiers, 8(1), 395–410.
4. Batini, C., & Lenzerini, M., (1984). A methodology for data schema integration in the
entity relationship model. IEEE Transactions on Software Engineering, 4(6), 650–664.
5. Batra, D., & Davis, J. G., (1992). Conceptual data modeling in database design:
Similarities and differences between expert and novice designers. International
Journal of Man-Machine Studies, 37(1), 83–101.
6. Becker, J., Matzner, M., Müller, O., & Winkelmann, A., (2008). Towards a semantic
data quality management-using ontologies to assess master data quality in retailing.
AMCIS 2008 Proceedings, 129, 1, 4–9.
7. Bellatreche, L., Dung, N. X., Pierra, G., & Hondjack, D., (2006). Contribution of
ontology-based data modeling to automatic integration of electronic catalogues within
engineering databases. Computers in Industry, 57(8, 9), 711–724.
8. Berti-Equille, L., (2007). Measuring and modeling data quality for quality-awareness
in data mining. Quality Measures in Data Mining, 2(1), 101–126.
9. Bertossi, L., & Milani, M., (2018). Ontological multidimensional data models and
contextual data quality. Journal of Data and Information Quality (JDIQ), 9(3), 1–36.
10. Bertossi, L., & Rizzolo, F., (2016). Contexts and Data Quality Assessment, 1, 3–6.
11. Bhavsar, H., & Ganatra, A., (2012). A comparative study of training algorithms for
supervised machine learning. International Journal of Soft Computing and Engineering
(IJSCE), 2(4), 2231–2307.
12. Brunette, W., Sundt, M., Dell, N., Chaudhri, R., Breit, N., & Borriello, G., (2013). Open
data kit 2.0: Expanding and refining information services for developing regions. In:
Proceedings of the 14th Workshop on Mobile Computing Systems and Applications
(Vol. 1, pp. 1–6).
13. Bruns, E., Brombach, B., & Bimber, O., (2008). Mobile phone-enabled museum
guidance with adaptive classification. IEEE Computer Graphics and Applications,
28(4), 98–102.
14. Burgin, M., & Mikkilineni, R., (2021). From data processing to knowledge processing:
Working with operational schemas by autopoietic machines. Big Data and Cognitive
Computing, 5(1), 13.
15. Câmara, G., Souza, R. C. M., Freitas, U. M., & Garrido, J., (1996). SPRING:
Integrating remote sensing and GIS by object-oriented data modeling. Computers
& Graphics, 20(3), 395–403.
CHAPTER
4
156 Fundamentals of Database Systems
16. Campbell, R. H., & Islam, N., (1992). A technique for documenting the framework
of an object-oriented system. In: [1992] Proceedings of the Second International
Workshop on Object Orientation in Operating Systems (Vol. 1, pp. 288–300). IEEE.
17. Caroprese, L., Greco, S., & Zumpano, E., (2008). Active integrity constraints for
database consistency maintenance. IEEE Transactions on Knowledge and Data
Engineering, 21(7), 1042–1058.
18. Chang, J. R., Jheng, Y. H., Lo, C. H., & Chang, B., (2011). Attribute coding for the
rough set theory based rule simplications by using the particle swarm optimization
algorithm. In: Intelligent Decision Technologies: Proceedings of the 3rd International
Conference on Intelligent Decision Technologies (IDT’2011) (Vol. 1, pp. 399–407).
Springer Berlin Heidelberg.
19. Chen, P. P. S., (1976). The entity-relationship model—Toward a unified view of data.
ACM Transactions on Database Systems (TODS), 1(1), 9–36.
20. Chen, P. P. S., (1977). The entity-relationship model: A basis for the enterprise view
of data. In: Proceedings of the June 13–16, 1977, National Computer Conference
(Vol. 1, pp. 77–84).
21. Chen, X., Shrivastava, A., & Gupta, A., (2013). Neil: Extracting visual knowledge
from web data. In: Proceedings of the IEEE International Conference on Computer
Vision (Vol. 1, pp. 1409–1416).
22. Christiansen, H., & Martinenghi, D., (2006). On simplification of database integrity
constraints. Fundamenta Informaticae, 71(4), 371–417.
23. Clarkson, B., Sawhney, N., & Pentland, A., (1998). Auditory context awareness via
wearable computing. Energy, 400(600), 20.
24. Colomb, R. M., & Dampney, C. N., (2005). An approach to ontology for institutional
facts in the semantic web. Information and Software Technology, 47(12), 775–783.
25. Davis, F. D., (1985). A Technology Acceptance Model for Empirically Testing New
End-User Information Systems: Theory and Results (Vol. 1, pp. 2–4). Doctoral
dissertation, Massachusetts Institute of Technology.
26. Demšar, J., (2010). Algorithms for subsetting attribute values with relief. Machine
Learning, 78(1), 421–428.
27. Deville, Y., Gilbert, D., Van, H. J., & Wodak, S. J., (2003). An overview of data models
for the analysis of biochemical pathways. Briefings in Bioinformatics, 4(3), 246–259.
28. Dragos, V., Gatepaille, S., & Lerouvreur, X., (2016). Refining relation identification by
combining soft and sensor data. In: 2016 19th International Conference on Information
Fusion (FUSION) (Vol. 1, pp. 2139–2146). IEEE.
29. Ehrlich, P., (2001). Number systems with simplicity hierarchies: A generalization of
Conway’s theory of surreal numbers. The Journal of Symbolic Logic, 66(3), 1231–1258.
30. Fang, W., Ma, L., Love, P. E., Luo, H., Ding, L., & Zhou, A. O., (2020). Knowledge
graph for identifying hazards on construction sites: Integrating computer vision with
ontology. Automation in Construction, 119(1), 103310.
CHAPTER
4
Database Modeling 157
31. Feng, A., Sugiyama, Y., Fujii, M., & Torii, K., (1988). An attribute grammar with
common attributes and its evaluator in prolog. Systems and Computers in Japan,
19(6), 97–107.
32. Friedman, N., & Goldszmidt, M., (1996). Discretizing continuous attributes while
learning Bayesian networks. In: ICML (Vol. 1, pp. 157–165).
33. Gambrel, L. E., Faas, C., Kaestle, C. E., & Savla, J., (2016). Interpersonal neurobiology
and couple relationship quality: A longitudinal model. Contemporary Family Therapy,
38(1), 272–283.
34. Getoor, L., & Grant, J., (2006). PRL: A probabilistic relational language. Machine
Learning, 62(1), 7–31.
35. Gregersen, H., & Jensen, C. S., (1999). Temporal entity-relationship models-a survey.
IEEE Transactions on Knowledge and Data Engineering, 11(3), 464–497.
36. Haas, L., (2006). Beauty and the beast: The theory and practice of information
integration. In: Database Theory–ICDT 2007: 11th International Conference, Barcelona,
Spain, January 10–12, 2007, Proceedings 11 (Vol. 1, pp. 28–43). Springer Berlin
Heidelberg.
37. Hamouda, S., & Zainol, Z., (2017). Document-oriented data schema for relational
database migration to NoSQL. In: 2017 International Conference on Big Data
Innovations and Applications (Innovate-Data) (Vol. 1, pp. 43–50). IEEE.
38. Han, J., Haihong, E., Le, G., & Du, J., (2011). Survey on NoSQL database. In: 2011
6th International Conference on Pervasive Computing and Applications (Vol. 1, pp.
363–366). IEEE.
39. Hashem, I. A. T., Yaqoob, I., Anuar, N. B., Mokhtar, S., Gani, A., & Khan, S. U.,
(2015). The rise of “big data” on cloud computing: Review and open research issues.
Information Systems, 47, 98–115.
40. Hernandez, M. J., (2013). Database Design for Mere Mortals: A Hands-On Guide
to Relational Database Design (Vol. 1, pp. 2–5). Pearson Education.
41. Huang, J., Zhang, W., Zhao, S., Ding, S., & Wang, H., (2017). Learning to explain
entity relationships by pairwise ranking with convolutional neural networks. In: IJCAI
(Vol. 1, pp. 4018–4025).
42. Hull, R., & King, R., (1987). Semantic database modeling: Survey, applications, and
research issues. ACM Computing Surveys (CSUR), 19(3), 201–260.
43. Hung, C. J. F., (2007). Toward the theory of relationship management in public
relations: How to cultivate quality relationships. The Future of Excellence in Public
Relations and Communication Management: Challenges for the Next Generation,
1, 443–476.
44. Hunt, T. D., (2010). Natural or artificial primary key? Using the Mifrenz childrens
email application as a case study. New Zealand Journal of Applied Computing &
Information Technology, 14(1), 4–9.
45. Jen-Yen, C., & Yu-Shiang, H., (1994). An integrated object-oriented analysis and
CHAPTER
4
158 Fundamentals of Database Systems
CHAPTER
4
160 Fundamentals of Database Systems
73. Qian, X., & Lunt, T. F., (1996). A MAC policy framework for multilevel relational
databases. IEEE Transactions on Knowledge and Data Engineering, 8(1), 3–15.
74. Ravald, A., & Grönroos, C., (1996). The value concept and relationship marketing.
European Journal of Marketing, 30(2), 19–30.
75. Reiter, R., (1989). Towards a logical reconstruction of relational database theory.
In: Readings in Artificial Intelligence and Databases (Vol. 1, pp. 301–327). Morgan
Kaufmann.
76. Sellitto, C., Burgess, S., & Hawking, P., (2007). Information quality attributes associated
with RFID-derived benefits in the retail supply chain. International Journal of Retail
& Distribution Management, 35(1), 69–87.
77. Sever, I., Verbič, M., & Klaric, S. E., (2020). Estimating attribute-specific willingness-
to-pay values from a health care contingent valuation study: A best–worst choice
approach. Applied Health Economics and Health Policy, 18(1), 97–107.
78. Sezer, O. B., Dogdu, E., & Ozbayoglu, A. M., (2017). Context-aware computing,
learning, and big data in internet of things: A survey. IEEE Internet of Things Journal,
5(1), 1–27.
79. Sheth, A. P., & Larson, J. A., (1990). Federated database systems for managing
distributed, heterogeneous, and autonomous databases. ACM Computing Surveys
(CSUR), 22(3), 183–236.
80. Sibley, C. G., (2007). The association between working models of attachment and
personality: Toward an integrative framework operationalizing global relational models.
Journal of Research in Personality, 41(1), 90–109.
81. Sibley, E. H., & Kerschberg, L., (1977). Data architecture and data model considerations.
In: Proceedings of the June 13–16, 1977, National Computer Conference (Vol. 1,
pp. 85–96).
82. Solomon, D. H., & Brisini, K. S. C., (2019). Relational uncertainty and interdependence
processes in marriage: A test of relational turbulence theory. Journal of Social and
Personal Relationships, 36(8), 2416–2436.
83. Sommestad, T., Ekstedt, M., & Johnson, P., (2009). Cyber security risks assessment
with Bayesian defense graphs and architectural models. In: 2009 42nd Hawaii
International Conference on System Sciences (Vol. 1, pp. 1–10). IEEE.
84. Soylu, A., & De Causmaecker, P., (2009). Merging model driven and ontology
driven system development approaches pervasive computing perspective. In: 2009
24th International Symposium on Computer and Information Sciences (Vol. 1, pp.
730–735). IEEE.
85. Tan, X., Hammad, A., & Fazio, P., (2010). Automated code compliance checking for
building envelope design. Journal of Computing in Civil Engineering, 24(2), 203–211.
86. Teorey, T. J., Lightstone, S. S., Nadeau, T., & Jagadish, H. V., (2011). Database
Modeling and Design: Logical Design (Vol. 3, No. 1, pp. 4–9). Elsevier.
87. Thion, R., & Coulondre, S., (2012). A relational database integrity framework for
CHAPTER
4
Database Modeling 161
CHAPTER
4
CHAPTER 5
RELATIONAL DATABASE
AND SQL
UNIT INTRODUCTION
In the world we live in today, which is increasingly driven by data, the effective and
efficient management of data is essential to the success of any organization. Here is where
relational databases come into play; they serve as the foundation for many enterprise
systems, storing, and processing massive amounts of data. Relational databases are
foundation of many enterprise applications (Deari et al., 2018). The principles of relational
databases, including their structure, design, and implementation, and how they are utilized
to manage and manipulate data, will be covered in this chapter.
In addition, we will go over SQL, stands for Structured Query Language, standard
language for interaction with relational databases. Since SQL is powerful tool which enable
users to create, change, edit, and query databases, knowing how to use it is an absolute
must for everyone who works with data. This chapter will provide an in-depth introduction
to SQL, focusing on the language’s syntax, functions, and capabilities.
At the end of this chapter, you will have a solid understanding of the operation of
relational databases, as well as how to construct and deploy such databases, and how to
use SQL to manage and query data. This material will be essential for everyone who works
with data in any capacity, be they software engineers, data scientists, or data analysts.
164 Fundamentals of Database Systems
Learning Objectives
At the end of this chapter, readers will be able to learn:
• Concepts of relational database;
• Basics of hierarchical and network databases;
• Various components of the relational database;
• Overview of the SQL and the practices of the SQL commands.
Key Terms
• Command
• Datatype
• Field
• Microsoft access
• Oracle
• Query
• Record
• Row
• Server
• Table
CHAPTER
5
Relational Database and SQL 165
Figure 5.1. An
example of the
relational database.
Figure 5.2. An
example of the
hierarchical database.
CHAPTER
5
Relational Database and SQL 167
Figure 5.3. An
example of the
network data model.
5.4.1. Table
The table is the fundamental unit of a relational database. A table
can be considered columns and rows of information, similar to a
CHAPTER
5
168 Fundamentals of Database Systems
5.4.2. Record/Row
All the details regarding one thing or subject are contained in a
record. In theory, if your business cards from 50 people, each card
would be representing table, and data on each card would stand in
for single record. Every row in database table represents a record.
The seven rows in the Titles table also correspond to the seven
various CD titles Lyric Music offers (Atzeni & De Antonellis, 1993).
Few database specialists prefer to use row as records sometimes
have additional meanings outside relational databases.
5.4.3. Field/Column
Any information about subject or thing stored in field. Few experts
of database like to use the word “column” alone because a field
in a database table is a column. There are City, WebAddress,
LeadSource, etc., fields in the Artists table. Matching fields in
two tables help maintain relationships in relational databases
(Colombera et al., 2012). For instance, the ArtistID field is shared
by the Artists table and the Titles table, enabling data to be fetched
from both tables simultaneously.
5.4.4. Datatype
A datatype is given to every field in database table, describing
the datatype that can be placed there. Datatypes are important
to understand since they greatly influence how you handle data
in SQL (Chang & Fu, 2005) (Table 5.1).
CHAPTER
5
Relational Database and SQL 169
Float
Real
Currency Currency SmallMoney Money Decimal Used for money
fields.
Money
Date DateTime SmallDateTime Date Date Holds date and
time data.
DateTime Time
DateTime
CHAPTER
5
170 Fundamentals of Database Systems
5.4.5. Query/View
To display data from a database, perform a query. Both query
by example (QBE), a GUI interface for query development, and
Structured Query Language (SQL), a query language, can be
CHAPTER
5
Relational Database and SQL 171
used to create queries. SQL is the more versatile and potent tool
of the two. KEYWORD
Any set of rows from table, any combination of columns from Programming
able, and even data from many tables using table relationships code is the
can be reported by queries. Information can be calculated and instructions given
summarized through queries. Queries can insert, edit, and delete to a machine to
data and choose information to display. create a computer
program.
You can even save queries for later use in some databases.
Saved query known as view in advanced databases. In Internet
programming, views, and queries are incredibly potent tools. A
view can reduce the complexity of a complex multi-table query
to something extremely basic, simplifying the programming code.
CHAPTER
5
Relational Database and SQL 177
CHAPTER
5
178 Fundamentals of Database Systems
5.6.4. Oracle
KEYWORD
Oracle is widely used client-server database system in current
Oracle is an market. The steps below can load the Lyric Music database if you
object-oriented can access an Oracle database.
relational database
distributed by the • Open Oracle SQL Plus and login with master system user
Oracle Corporation. name or login with the database administrator provided
to you (Yeole & Meshram, 2011).
• Insert the CD-ROM for the book into your CD-ROM drive.
• Type @ and your CD-ROM drive’s drive letter at SQL
prompt, followed by colon (:) & LyricOracle.sql (i.e., d:
LyricOracle.sql).
To practice your SQL, do the following:
• Open Oracle SQL Plus and log in with user name of
master system or login with details provided to you by
database administrator (Seyed-Abbassi, 1993).
• Type your SQL command at the SQL prompt. If you’d like,
you can split the command across numerous lines. Add a
semicolon (;) to the last line to carry out the command.
Data description commands:
• Type “select table_name from user_tables” into your Oracle
database to see a list of all the user tables there;
• To list all of the data and field type contained in specific
sort of table: description tablename (Shi, 2010).
ACTIVITY 5.1.
You work for a financial institution that has a relational database containing customer
account data. Describe how you would use SQL to query the database and retrieve
specific information, such as account balances, transaction histories, and customer
demographics.
CHAPTER
5
Relational Database and SQL 179
5.7. SUMMARY
Even though there are other kinds of data formats (such object-oriented databases (OODBs)
and XML), relational databases remain foundation for vast majority of applications that are
used today. Relational databases organize their data storage in separate tables, are linked
to one another through primary key-foreign key connections. These tables hold the data.
A primary key is set of fields that is used to uniquely identify each row (or record) in a
database. This primary key can be group of fields or single field. Every field of column
in database table equipped with assigned datatype which determines types of data that
can be stored in that column or field. These datatypes are classified as numeric, text,
currency, Boolean, date, and special datatypes. Although they vary from database to
database, they may generally be broken down into these categories.
Structured Query Language is the language that should be used whenever possible
for obtaining information from a relational database (SQL). SQL is a sophisticated query
language that includes commands for adding new data, updating existing ones, and
removing old ones. It is even possible to utilize it to construct a relational database
from the ground up. Almost all relational database products have some form of SQL
implementation in their backend operations. In addition, SQL is remarkably consistent
across all of the many database systems that use it because it is an ANSI standard.
Nonetheless, the implementation of SQL that is utilized by each vendor is distinct. Several
times, the database-specific extensions for SQL deliver both essential functionality and
much-appreciated efficiency improvements. Programmers that want their code to be as
portable as feasible should, despite this, adhere as closely as they can to the ANSI
standard SQL.
REVIEW QUESTIONS
1. What is a relational database? What are its key components?
2. Compare and contrast hierarchical and network databases.
3. What is normalization? Why is it important in database design?
4. What is SQL? What are its key features?
5. Explain in detail the working of SQL.
CHAPTER
5
180 Fundamentals of Database Systems
REFERENCES
1. Ali, A. B. M., Abdullah, M. S., & Alostad, J., (2011). SQL-injection vulnerability
scanning tool for automatic creation of SQL-injection attacks. Procedia Computer
Science, 3(1), 453–458.
2. Antunes, N., Laranjeiro, N., Vieira, M., & Madeira, H., (2009). Effective detection
of SQL/XPath injection vulnerabilities in web services. In: 2009 IEEE International
Conference on Services Computing (Vol. 1, pp. 260–267). IEEE.
3. Atchariyachanvanich, K., Nalintippayawong, S., & Julavanich, T., (2019). Reverse
SQL question generation algorithm in the DBLearn adaptive E-learning system. IEEE
Access, 7(1), 54993–55004.
CHAPTER
5
Relational Database and SQL 181
4. Atzeni, P., & De Antonellis, V., (1993). Relational Database Theory (Vol. 1, pp. 5–10).
Benjamin-Cummings Publishing Co., Inc.
5. Beaulieu, A., (2009). Learning SQL: Master SQL Fundamentals (Vol. 1, pp. 2–5).
“O’Reilly Media, Inc.”
6. Boyd, S. W., & Keromytis, A. D., (2004). SQLrand: Preventing SQL injection attacks.
In: Applied Cryptography and Network Security: Second International Conference,
ACNS 2004, Yellow Mountain, China, June 8–11, 2004, Proceedings 2 (Vol. 1, pp.
292–302). Springer Berlin Heidelberg.
7. Chang, N. S., & Fu, K. S., (2005). A relational database system for images. Pictorial
Information Systems, 1, 288–321.
8. Codd, E. F., (2007). Relational database: A practical foundation for productivity. In:
ACM Turing Award Lectures (Vol. 1, p. 1981).
9. Colombera, L., Mountney, N. P., & McCaffrey, W. D., (2012). A Relational Database
for the Digitization of Fluvial Architecture: Concepts and Example Applications, 1,
5–10.
10. Date, C. J., (2006). The Relational Database Dictionary: A Comprehensive Glossary
of Relational Terms and Concepts, with Illustrative Examples (Vol. 1, pp. 7–9).
“O’Reilly Media, Inc.”
11. De Almeida, V. T., & Güting, R. H., (2005). Supporting uncertainty in moving objects
in network databases. In: Proceedings of the 13th Annual ACM International Workshop
on Geographic Information Systems (Vol. 1, pp. 31–40).
12. Deari, R., Zenuni, X., Ajdari, J., Ismaili, F., & Raufi, B., (2018). Analysis and comparison
of document-based databases with SQL relational databases: MongoDB vs MySQL.
In: Proceedings of the International Conference on Information Technologies (Vol.
1, pp. 1–10).
13. Domdouzis, K., Lake, P., & Crowther, P., (2021). Hierarchical databases. In: Concise
Guide to Databases: A Practical Introduction (Vol. 1, pp. 205–212). Cham: Springer
International Publishing.
14. Dumler, M., (2005). Microsoft SQL server 2008 product overview. Microsoft Corporation,
3(2), 5–10.
15. Emerson, S. L., Darnovsky, M., & Bowman, J., (1989). The Practical SQL Handbook:
Using Structured Query Language (Vol. 1, pp. 2–8). Addison-Wesley Longman
Publishing Co., Inc.
16. Fang, Y., Friedman, M., Nair, G., Rys, M., & Schmid, A. E., (2008). Spatial indexing in
Microsoft SQL server 2008. In: Proceedings of the 2008 ACM SIGMOD International
Conference on Management of Data (Vol. 1, pp. 1207–1216).
17. Foster, E. C., Godbole, S., Foster, E. C., & Godbole, S., (2016). Overview of Microsoft
SQL server. Database Systems: A Pragmatic Approach, 1, 461–467.
18. Halder, R., & Cortesi, A., (2010). Obfuscation-based analysis of SQL injection
attacks. In: The IEEE Symposium on Computers and Communications (Vol. 1, pp.
931–938). IEEE.
CHAPTER
5
182 Fundamentals of Database Systems
19. Halfond, W. G., & Orso, A., (2007). Detection and prevention of SQL injection attacks.
In: Malware Detection (Vol. 1, pp. 85–109). Springer US.
20. Henderson, K., (2000). The Guru’s Guide to Transact-SQL (Vol. 1, pp. 5–8). Addison-
Wesley Professional.
21. Julavanich, T., Nalintippayawong, S., & Atchariyachanvanich, K., (2019). RSQLG: The
reverse SQL question generation algorithm. In: 2019 IEEE 6th International Conference
on Industrial Engineering and Applications (ICIEA) (Vol. 1, pp. 908–912). IEEE.
22. Kanellakis, P. C., (1990). Elements of relational database theory. In: Formal Models
and Semantics (Vol. 1, pp. 1073–1156). Elsevier.
23. Kemalis, K., & Tzouramanis, T., (2008). SQL-IDS: A specification-based approach for
SQL-injection detection. In: Proceedings of the 2008 ACM Symposium on Applied
Computing (Vol. 1, pp. 2153–2158).
24. Kießling, W., Endres, M., & Wenzel, F., (2011). The preference SQL system-an
overview. IEEE Data Engineering Bulletin, 34(3), 12–19.
25. Kroenke, D. M., Auer, D. J., Vandenberg, S. L., & Yoder, R. C., (2010). Database
Concepts (Vol. 1, pp. 2–8, 1480–1486). Upper Saddle River, NJ: Prentice Hall.
26. Larson, P. A., Clinciu, C., Fraser, C., Hanson, E. N., Mokhtar, M., Nowakiewicz, M., &
Saubhasik, M., (2013). Enhancements to SQL server column stores. In: Proceedings
of the 2013 ACM SIGMOD International Conference on Management of Data (Vol.
1, pp. 1159–1168).
27. Litwin, W., Sahri, S., & Schwarz, T., (2006). An overview of a scalable distributed
database system SD-SQL server. In: Flexible and Efficient Information Handling: 23rd
British National Conference on Databases, BNCOD 23, Belfast, Northern Ireland, UK,
July 18–20, 2006, Proceedings 23 (Vol. 1, pp. 16–35). Springer Berlin Heidelberg.
28. Mattos, N. M., Darwen, H., Cotton, P., Pistor, P., Kulkarni, K., Dessloch, S., &
Zeidenstein, K., (1999). SQL: 1999, SQL/MM and SQLJ: An overview of the SQL
standards. Tutorial, IBM Database Common Technology, 1, pp. 2–9.
29. Melton, J., & Mattos, N. M., (1995). An overview of the emerging third-generation
SQL standard. ACM SIGMOD Record, 24(2), 468.
30. Melton, J., (1996). SQL language summary. ACM Computing Surveys (CSUR),
28(1), 141–143.
31. Mitrovic, A., (1998). A knowledge-based teaching system for SQL. In: Proceedings
of ED-MEDIA (Vol. 98, pp. 1027–1032).
32. Morgan, D., (2006). Web application security–SQL injection attacks. Network Security,
2006(4), 4–5.
33. Papadias, D., Zhang, J., Mamoulis, N., & Tao, Y., (2003). Query processing in spatial
network databases. In: Proceedings 2003 VLDB Conference (Vol. 1, pp. 802–813).
Morgan Kaufmann.
34. Rankins, R., Bertucci, P. T., Gallelli, C., Silverstein, A. T., & Cotter, H., (2014).
Microsoft SQL Server 2012 Unleashed (Vol. 1, pp. 2–8). Pearson Education.
CHAPTER
5
Relational Database and SQL 183
CHAPTER
5
CHAPTER 6
UNIT INTRODUCTION
In 2006, LinkedIn, the social networking behemoth, began analyzing its members’ profiles
and recommending individuals they might recognize. This feature was intended to motivate
users to extend their social media network according to their hobbies and provide
them with appropriate recommendations. LinkedIn determined that most of its invitation
recommendations were practical via this function. Similarly, in 2012, President Obama’s
candidacy received a substantial boost in the United States presidential primaries. It
was highly successful through predictive modeling on a large dataset containing voters’
identities, preferences, and trends (Villars et al., 2011).
The two instances provided illustrate the great potential of analyzing, connecting, and
retrieving actionable data from big data sets. The subject of prediction necessitates vast
data and the methodical linking of multiple qualities on enormous data sets.
While big data has enormous potential for extracting information, it requires an in-depth
understanding of the underpinning systems (hardware and software) utilized to maintain,
manipulate, connect, and interpret information (Jeble et al., 2017).
186 Fundamentals of Database Systems
Learning Objectives
After this chapter, readers will understand the following:
• The basics, including the significance and properties of big data;
• Technology utilized for big data;
• Varieties of data utilized in big data include both analytical and transactional data;
• Requirements and difficulties of big data.
Key Terms
• Analytical data
• Big data
• Hadoop
• Privacy
• Scalability
• Spark
• Technologies
• Transactional data
CHAPTER
6
Role of Big Data in Database Systems 187
6.1.1.1. Volume
Big data pertains to the enormous quantity of data that poses
a barrier to storing and analyzing demands. Although there is
no explicit differentiation regarding the amount of information,
the volume can often range from Terabytes (10^12) to Exabytes
(10^18) and beyond.
CHAPTER
6
188 Fundamentals of Database Systems
6.1.1.2. Velocity
Data is being produced at a rapid rate. The rapid rate of data
creation indicates the significance of data. The fast velocity of
data may be measured by the reality that a significant fraction of
utilized data is from the recent past.
6.1.1.3. Variety
KEYWORD Such data may be gathered from various sources, including online
Comma-separated archives, Internet of Things (IoT) equipment, URL, users tweeting,
values (CSV) file and search trends. Likewise, data may be presented in several
is a delimited text ways, including comma separated values (CSV), text documents,
file that uses a tables, and infographics. Moreover, it may be organized, semi-
comma to separate structured, or unorganized.
values. Each line
of the file is a data
6.1.1.4. Veracity
record.
The authenticity of data may fluctuate; i.e., data under evaluation
could be irregular or extremely regular throughout all copies; it
may be worthless or of tremendous value. Veracity relates to the
dependability, precision, or legitimacy of data.
6.1.1.5. Value
Data must be of excellent quality; outdated data is useless.
CHAPTER
6
Role of Big Data in Database Systems 189
CHAPTER
6
190 Fundamentals of Database Systems
6.2.1. Hadoop
Hadoop is a free platform for storing and computing massive
datasets in a distributed way. It is founded on the MapReduce
paradigm and the Hadoop distributed file system (HDFS). Hadoop
enables businesses to manage, store, and examine enormous
amounts of information across hundreds of thousands of commodity
computers. Hadoop is intended to be scalable, fault-tolerant, and
economical (Borthakur, 2007) (Figure 6.2).
CHAPTER
6
Role of Big Data in Database Systems 191
6.2.2. Spark
Apache Spark offers an accessible platform for cluster computing
KEYWORD
that enables rapid in-memory data analysis. Spark is supposed Hadoop
to be speedier than Hadoop by giving features for real-time data distributed file
handling. It is interoperable with Hadoop data sources and is system (HDFS) is
developed on the foundation of a HDFS. Spark offers a variety of the primary data
data processing APIs, such as SQL, graph processing, machine storage system
learning, and broadcasting. It also provides a uniform API that used by Hadoop
enables developers to write apps in many programming languages, applications.
such as Java, Python, Scala, and R (Zaharia et al., 2016).
Spark is composed of three primary elements:
i. Spark’s fundamental functionality, including shared
scheduling scheme, memory allocation, and error resolution,
is provided by the Spark Core;
ii. Spark SQL offers SQL-based interfaces for dealing with
structured information. It enables programmers to do SQL
searches against Hadoop and other data sources; and
iii. Spark Streaming: It provides capabilities for real-time data
processing. It enables developers to handle information in
close to real-time, which makes it ideal for detecting fraud,
log processing, and IoT computational use applications.
CHAPTER
6
Role of Big Data in Database Systems 193
CHAPTER
6
194 Fundamentals of Database Systems
CHAPTER
6
196 Fundamentals of Database Systems
6.4.4. Flexibility
Big data systems might include text information, photos, films, and
charts, among other data types. Likewise, data can be evaluated and
examined using various methods, such as infographics, unprocessed
data, queries, and aggregated data. Such systems must provide
KEYWORD flexible accessibility to and storage of big data systems.
Infographics are
graphic visual 6.4.5. Privacy and Access Control
representations of
information, data, As big data systems collect information from various places,
or knowledge confidentiality, and access control seem among the main priorities.
intended to present Big issues like what data can be publicly disclosed, what material
information quickly
should be evaluated, and who owns the data must be addressed.
and clearly.
6.4.6. Elasticity
The volume of participants in big data systems fluctuates over
time. An effective system must have the capacity to satisfy
user requirements. Elasticity relates to the system’s capacity to
accommodate these demands (Barnawi et al., 2020).
6.4.9. Multi-Tenancy
Many users can access big data systems at once. Multi-tenancy
pertains to the system’s capacity to provide impartial, consistent,
and separate services to big data users.
CHAPTER
6
Role of Big Data in Database Systems 197
ACTIVITY 6.1.
You are part of a team tasked with developing a database system that can handle
the large volumes of data generated by a social media platform. Describe how you
would design the database system to handle the volume, velocity, and variety of
data, while ensuring scalability, availability, and security.
CHAPTER
6
198 Fundamentals of Database Systems
6.5. SUMMARY
Big data systems analyze huge amounts of data in depth to forecast and analyze it.
The system design, fault endurance, computing, and processing, replication, consistency,
scalability, and memory space for these systems are unique. This book is intended to
demonstrate available solutions to these problems.
REVIEW QUESTIONS
1. Explain the five V’s of big data.
2. Explain CAP Theorem. How is it useful for big data?
3. Explain the difference between found data and all data.
4. What are the major challenges for big data systems?
5. What are ACID guarantees? Are they needed for big data systems?
6. Highlight major differences between transactional systems and analytical system.
c. Transactional data is used for real-time processing, while analytical data is used
for reporting
d. Transactional data is unstructured, while analytical data is structured
5. What are some of the requirements and challenges of big data?
a. Scalability, security, and data integration
b. Scalability, simplicity, and data consistency
c. Scalability, compatibility, and data completeness
d. Scalability, accessibility, and data accuracy
REFERENCES
1. Abourezq, M., & Idrissi, A., (2016). Database-as-a-service for big data: An overview.
International Journal of Advanced Computer Science and Applications, 7(1), 2–19.
2. Agrawal, D., Das, S., & El Abbadi, A., (2011). Big data and cloud computing: Current
state and future opportunities. In: Proceedings of the 14th International Conference
on Extending Database Technology, 1(2), 530–533.
3. Ahmed, O. M., Haji, L. M., Shukur, H. M., Zebari, R. R., Abas, S. M., & Sadeeq, M.
A., (2020). Comparison among cloud technologies and cloud performance. Journal
of Applied Science and Technology Trends, 1, 40–47.
4. Al-Dhuraibi, Y., Paraiso, F., Djarallah, N., & Merle, P., (2017). Elasticity in cloud
computing: State of the art and research challenges. IEEE Transactions on Services
Computing, 11(2), 430–447.
5. Al-Qarni, B. H., Almogren, A., & Hassan, M. M., (2019). An efficient networking
protocol for internet of things to handle multimedia big data. Multimedia Tools and
Applications, 78, 30039–30056.
6. Alsghaier, H., Akour, M., Shehabat, I., & Aldiabat, S., (2017). The importance of big
data analytics in business: A case study. American Journal of Software Engineering
and Applications, 6(4), 111–115.
7. Ansari, S., Mohanlal, R., Poncela, J., Ansari, A., & Mohanlal, K., (2015). Importance
of big data. In: Handbook of Research on Trends and Future Directions in Big Data
and Web Intelligence, 1(1), 1–19.
8. Bagui, S., & Nguyen, L. T., (2015). Database sharding: To provide fault tolerance
and scalability of big data on the cloud. International Journal of Cloud Applications
and Computing (IJCAC), 5(2), 36–52.
9. Barnawi, A., Sakr, S., Xiao, W., & Al-Barakati, A., (2020). The views, measurements
CHAPTER
6
200 Fundamentals of Database Systems
25. Villars, R. L., Olofson, C. W., & Eastwood, M., (2011). Big Data: What it is and Why
You Should Care? (Vol. 14, pp. 1–14). White Paper, IDC.
26. Zaharia, M., Xin, R. S., Wendell, P., Das, T., Armbrust, M., Dave, A., & Stoica, I.,
(2016). Apache spark: A unified engine for big data processing. Communications of
the ACM, 59(11), 56–65.
27. Zhang, H., Chen, G., Ooi, B. C., Tan, K. L., & Zhang, M., (2015). In-memory big
data management and processing: A survey. IEEE Transactions on Knowledge and
Data Engineering, 27(7), 1920–1948.
CHAPTER
6
CHAPTER 7
UNIT INTRODUCTION
According to the definition provided by Ballard (1998), a data warehouse (DW) is type of
computer system which regularly consolidates and collects data from its various source
systems into dimensional data storage format. Typically, DW stores history that spans
years and can be searched for purposes including corporate intelligence and analytical
endeavors. It’s often updated in batches, as opposed to each time a transaction takes
place in the system that it is derived from Burton (2010).
The DW includes the Data Mart as one of its subsets, and it’s defined as a historical
data body stored in an electronic repository. The Data Mart isn’t involved in day-to-day
activities of the firm. In its place, this data is put to use in the process of developing
business intelligence (BI). Data stored in DataMart often relate to particular division or
department of the business (Demarest, 2008). The dimensional model’s “Fact Table” contain
company’s numerical performance measurements. We try to store each measurement data
produced as byproduct of business activity in single data mart.
A fact table is never complete without its indispensable sidekick, the Dimension Table
(Eckerson, 2003). The business’s textual descriptions can be found in the dimension tables.
In dimensional model that has been thoughtfully designed, the dimension tables contain
a large number of columns or attributes. These characteristics are used to categorize
each row in dimension table. Dimension tables are typically not very deep in several rows
(typically have fewer than 1 million rows), but they are very wide and contain multiple large
columns. Fact tables can be accessed through their corresponding dimension tables. The
204 Fundamentals of Database Systems
dimensions are responsible for implementing user connection to DW. An online analytical
database processing, also known as an OLAP database, is a type of database technology
that stores, manages, and queries data intending to support applications of BI.
The (ETL) system is set of steps which clean, change, combine, remove duplicates,
archive, standardize, and structure data to be used in DW. ETL stands for extract,
transformation, and load system.
Learning Objectives
At the end of this chapter, readers will be able to learn:
• Concepts related to the data warehouse;
• Data statements in business intelligence;
• Architecture of the business intelligence;
• Data models of the data warehouse;
• Different concepts in business intelligence;
• Data warehousing online transactional processing (OLTP);
• Data warehouse and business intelligence high level architecture.
Key Terms
• Business
• Business intelligence
• Channel analysis
• Customer
• Data
• Data model
• Data warehouse
• Market
• Online
CHAPTER
7
Data Warehousing and Business Intelligence 205
Figure 7.1.
Illustration of the data
warehousing.
CHAPTER
7
208 Fundamentals of Database Systems
Figure 7.4.
Displaying data
warehouse
components.
Figure 7.5.
Representing
reporting system
parts.
CHAPTER
7
212 Fundamentals of Database Systems
CHAPTER
7
Data Warehousing and Business Intelligence 213
CHAPTER
7
216 Fundamentals of Database Systems
ACTIVITY 7.1.
You work for a manufacturing company that has data stored in multiple systems,
such as production data in one system, sales data in another, and inventory data
in yet another. Describe how you would integrate these data sources into a data
warehouse to facilitate business intelligence analysis and improve decision-making.
CHAPTER
7
Data Warehousing and Business Intelligence 219
7.8. SUMMARY
This chapter discusses the various ideas associated with data warehousing and BI. This
chapter offers an introduction to the DW, discussing its capabilities for online transactional
processing (OLTP), as well as its architecture and data models. Moreover, data statements
in BI, as well as a variety of BI ideas and the high-level architecture of both DWs and
BI, are discussed in this chapter.
REVIEW QUESTIONS
1. What is a data warehouse, and why is it important in business intelligence?
2. Explain the architecture of a data warehouse and its components.
3. What are the different data models used in a data warehouse, and how do they
differ from each other?
4. Describe OLTP, and how is it used in a data warehouse?
5. What are the different concepts in business intelligence, and how are they used
in a data warehouse?
6. Explain the high-level architecture of a data warehouse and business intelligence
system.
CHAPTER
7
220 Fundamentals of Database Systems
REFERENCES
1. Aws, A. L., Ping, T. A., & Al-Okaily, M., (2021). Towards business intelligence
success measurement in an organization: A conceptual study. J. Syst. Manag. Sci.,
11, 155–170.
2. Ballard, C., Herreman, D., Schau, D., Bell, R., Kim, E., & Valencic, A., (1998). Data
Modeling Techniques for Data Warehousing (Vol. 1, pp. 3–6, 25). San Jose: IBM
Corporation International Technical Support Organization.
3. Bara, A., Botha, I., Diaconita, V., Lungu, I., Velicanu, A., & Velicanu, M., (2009).
A model for business intelligence systems’ development. Informatica Economica,
13(4), 99.
CHAPTER
7
Data Warehousing and Business Intelligence 221
CHAPTER
7
222 Fundamentals of Database Systems
21. Franconi, E., & Kamblet, A., (2004). A data warehouse conceptual data model. In:
Proceedings. 16th International Conference on Scientific and Statistical Database
Management, 2004 (Vol. 1, pp. 435, 436). IEEE.
22. Franconi, E., & Sattler, U., (1999). A data warehouse conceptual data model for
multidimensional aggregation. In: DMDW (Vol. 19, p. 13).
23. Giovinazzo, W. A., (2003). Internet-Enabled Business Intelligence (Vol. 2, No. 1, pp.
6–10). Prentice Hall Professional.
24. Glancy, F. H., & Yadav, S. B., (2011). Business intelligence conceptual model.
International Journal of Business Intelligence Research (IJBIR), 2(2), 48–66.
25. Gosain, A., (2015). Literature review of data model quality metrics of data warehouse.
Procedia Computer Science, 48, 236–243.
26. Hackathorn, R., (1999). Farming the web for systematic business intelligence (Invited
talk. abstract only). In: Proceedings of the Fifth ACM SIGKDD International Conference
on Knowledge Discovery and Data Mining (Vol. 1, p. 3).
27. Han, J., & Kamber, M., (2001). Data Mining Concepts and Techniques (Vol. 1, pp.
5–10). San Francisco Moraga Kaufman.
28. Inmon, W. H., (1993). Building the Data Warehouse (Vol. 1, pp. 2–7). A Wiley QED
publication.
29. Kalelkar, M., Churi, P., & Kalelkar, D., (2014). Implementation of model-view-controller
architecture pattern for business intelligence architecture. International Journal of
Computer Applications, 102(12), 4–7.
30. Karmańska, A., (2019). Business intelligence in consolidation of financial statements.
Business informatics. Economic Informatics, 4(54)), 19–28.
31. Kimball, R., & Ross, M., (2010). The Kimball Group Reader: Relentlessly Practical
Tools for Data Warehousing and Business Intelligence (Vol. 1, pp. 5–10). John
Wiley & Sons.
32. Kimball, R., (1996). The Data Warehouse Toolkit: Practical Techniques for Building
Dimensional Data Warehouses (Vol. 1, pp. 3–7). John Wiley & Sons, Inc.
33. Lopes, J., Guimarães, T., & Santos, M. F., (2020). Adaptive business intelligence: A
new architectural approach. Procedia Computer Science, 177, 540–545.
34. McKnight, W., (2004). The new business intelligence architecture discussion.
Information Management, 14(9), 96.
35. Moody, D. L., & Kortink, M. A., (2000). From enterprise models to dimensional models:
A methodology for data warehouse and data mart design. In: DMDW (Vol. 1, p. 5).
36. Nadipalli, R., (2017). Effective Business Intelligence with QuickSight (Vol. 1, pp.
4–18). Packt Publishing Ltd.
37. Nedelcu, B., (2013). Business intelligence systems. Database Systems Journal,
4(4), 12–20.
38. Negash, S., (2004). Business intelligence. Communications of the Association for
Information Systems, 13(1), 15.
CHAPTER
7
Data Warehousing and Business Intelligence 223
39. Ong, I. L., Siew, P. H., & Wong, S. F., (2011). A five-layered business intelligence
architecture. Communications of the IBIMA, 2011, 1–11.
40. Patel, A., & Patel, J., (2012). Data modeling techniques for data warehouse.
International Journal of Multidisciplinary Research, 2(2), 240–246.
41. Pirttimaki, V. H., (2007). Conceptual analysis of business intelligence. South African
Journal of Information Management, 9(2), 3–7.
42. Poe, V., Brobst, S., & Klauer, P., (1997). Building a Data Warehouse for Decision
Support (Vol. 1, pp. 4–5). Prentice-Hall, Inc.
43. Rainardi, V., (2008). Building a Data Warehouse: With Examples in SQL Server
(Vol. 2, No. 1, pp. 6–10). John Wiley & Sons.
44. Ranjan, J., (2009). Business intelligence: Concepts, components, techniques and
benefits. Journal of Theoretical and Applied Information Technology, 9(1), 60–70.
45. Rifaie, M., Kianmehr, K., Alhajj, R., & Ridley, M. J., (2008). Data warehouse architecture
and design. In: 2008 IEEE International Conference on Information Reuse and
Integration (Vol. 1, pp. 58–63). IEEE.
46. Rizzi, S., Abelló, A., Lechtenbörger, J., & Trujillo, J., (2006). Research in data
warehouse modeling and design: Dead or alive? In: Proceedings of the 9th ACM
International Workshop on Data Warehousing and OLAP (Vol. 1, pp. 3–10).
47. Rouhani, S., Asgari, S., & Mirhosseini, S. V., (2012). Review study: Business
intelligence concepts and approaches. American Journal of Scientific Research,
50(1), 62–75.
48. Shariat, M., & Hightower, R., (2007). Conceptualizing business intelligence architecture.
Marketing Management Journal, 17(2), 40–46.
49. Shmueli, G., Patel, N. R., & Bruce, P. C., (2011). Data Mining for Business Intelligence:
Concepts, Techniques, and Applications in Microsoft Office Excel with XLMiner (Vol.
2, No. 1, pp. 5–9). John Wiley and Sons.
50. Simon, A. R., & Shaffer, S. L., (2001). Data Warehousing and Business Intelligence
for e-Commerce (Vol. 2, No. 3, pp. 1–11). Elsevier.
51. Singh, H. S., (1997). Data Warehousing: Concepts, Technologies, Implementations,
and Management (Vol. 1, pp. 4–10). Prentice-Hall, Inc.
52. Vaisman, A., & Zimányi, E., (2014). Data warehouse systems. Data-Centric Systems
and Applications, 3(1), 5–8.
53. Warnars, H. L. H. S., (2014). Perbandingan penggunaan database OLTP (online
transactional processing) dan data warehouse. Creative Communication and Innovative
Technology (CCIT) Journal, 8(1), 83–100.
54. Watson, H. J., (2009). Tutorial: Business intelligence–past, present, and future.
Communications of the Association for Information Systems, 25(1), 39.
55. Zimmer, M., Baars, H., & Kemper, H. G., (2012). The impact of agility requirements
on business intelligence architectures. In: 2012 45th Hawaii International Conference
on System Sciences (Vol. 1, pp. 4189–4198). IEEE.
CHAPTER
7
CHAPTER 8
APPLICATIONS OF
DATABASE SYSTEMS
UNIT INTRODUCTION
A database system is a collection of computer programs that enables users to store, access,
manipulate, and analyze data (Singh, 2009). It is a software system designed to manage
a large amount of structured data efficiently, and it provides tools for data organization,
storage, retrieval, and analysis. Database systems are essential for the efficient storage
and retrieval of data, and they are used in a wide variety of applications.
In modern computing, database systems are crucial for managing data in various
industries and domains. They provide the backbone for data-driven decision making, business
intelligence (BI), and analytics. Database systems help organizations to store and manage
large volumes of data, and they enable efficient access to this data when needed (Özsu
& Valduriez, 1996). They also provide a means of integrating data from different sources,
allowing organizations to gain insights and make informed decisions. With the growth of
big data and the rise of new technologies like cloud computing, database systems have
become even more important. Modern database systems are designed to handle large
volumes of data, and they provide features such as scalability, fault tolerance, and high
availability (Kifer, 2007). They are also capable of processing data in real-time, enabling
organizations to respond quickly to changing conditions and make timely decisions.
Overall, database systems are essential tools in modern computing, providing the
foundation for efficient data management and analysis. They play a critical role in various
applications, including e-commerce, healthcare, finance, social media, education, logistics,
and supply chain management. As data continues to grow in volume and complexity, the
importance of database systems is only set to increase.
226 Fundamentals of Database Systems
Learning Objectives
At the end of this chapter, readers will be able to:
• Define database systems and their role in managing and storing large amounts
of data.
• Explain the importance of database systems in various industries such as
e-commerce, healthcare, finance, social media, education, and logistics.
• Identify the critical role of databases in managing product catalogs, customer
orders, patient records, financial transactions, social media data, student records,
inventory, and delivery routes.
• Discuss the future applications of database systems in managing and analyzing
data from the Internet of Things (IoT).
• Describe the role of databases in storing, processing, and analyzing IoT data to
extract valuable insights.
• List examples of IoT databases and their features.
Key Terms
• Database systems
• Data analysis
• Data management
• E-commerce
• Healthcare
• Finance
• Social media
• Education
• Logistics
• Internet of things (IoT)
CHAPTER
8
Applications of Database Systems 227
8.1. E-COMMERCE
E-commerce has become increasingly popular in recent years, and
database systems play a critical role in enabling efficient online
shopping and e-commerce applications.
8.1.1.2. Personalization
E-commerce websites use customer data to personalize the shopping
experience. Databases are used to store customer preferences,
purchase history, and other data that can be used to tailor product
recommendations and marketing messages (Efendioglu & Yip,
2004).
CHAPTER
8
228 Fundamentals of Database Systems
8.1.2.1. Magento
Magento is an open-source e-commerce platform that uses a MySQL
database for data storage. It provides features such as inventory
management, order management, and customer management
(Eastin, 2002).
8.1.2.2. Shopify
Shopify is a cloud-based e-commerce platform that uses a MySQL
database for data storage. It provides features such as product
management, order management, and customer management (Jain
et al., 2021).
CHAPTER
8
Applications of Database Systems 229
8.1.2.3. WooCommerce
WooCommerce is a plugin for WordPress that enables e-commerce
functionality. It uses a MySQL database for data storage and
provides features such as product management, order management,
and payment processing (Gupta, 2014). Overall, databases play
a critical role in enabling efficient and personalized e-commerce
applications. They provide a means of managing data efficiently,
ensuring that customers receive a seamless shopping experience
and businesses can make informed decisions based on data
analysis.
8.2.2.2. Cerner
Cerner is a healthcare database system used for patient record
management, clinical decision support, and population health
management (Tomar et al., 2019). It provides features such as
electronic health records, clinical documentation, and revenue
cycle management.
CHAPTER
8
Applications of Database Systems 231
8.2.2.3. Meditech
Meditech is a healthcare database system used for patient
record management, clinical decision support, and billing and
reimbursement management. It provides features such as electronic
health records, pharmacy management, and laboratory information
management.
Overall, databases play a critical role in managing healthcare
data and enabling effective healthcare delivery. They provide a KEYWORD
means of storing, analyzing, and accessing healthcare information,
Financial
enabling healthcare providers to make informed decisions and
institution is a
improve patient outcomes. company engaged
in the business
of dealing
8.3. BANKING AND FINANCE with financial
The banking and finance industry generates and manages a vast and monetary
transactions such
amount of data, including transaction data, customer information,
as deposits, loans,
and financial market data (Ergungor, 2004). Database systems
investments, and
play a critical role in managing this data and ensuring that it is
currency exchange.
stored securely, accurately, and efficiently.
CHAPTER
8
232 Fundamentals of Database Systems
Figure 8.3.
Customer relationship
management and its
components.
8.3.1.4. Compliance
Databases are used to store and manage regulatory data, including
reporting requirements and compliance with anti-money laundering
regulations (Biancone et al., 2020).
8.3.2.2. QuickBooks
QuickBooks is a financial database used by small businesses to
manage financial data (Allen & Rai, 1996). It provides features
such as invoicing, expense tracking, and financial reporting.
8.3.2.3. FinFolio
FinFolio is a portfolio management database used by financial
advisors to manage client portfolios (Barrell et al., 2010). It provides
features such as performance reporting, rebalancing, and billing.
Overall, databases play a critical role in financial management,
enabling financial institutions to manage data efficiently and make
informed decisions based on data analysis. They provide a means
of storing, analyzing, and accessing financial information, ensuring
that financial institutions can operate effectively and provide high-
quality services to their customers. Databases play
a crucial role in
managing and
8.4. SOCIAL MEDIA analyzing large
amounts of data
generated by social
Social media platforms generate enormous amounts of data on
media platforms,
user behavior, preferences, and interactions. These platforms rely allowing for effective
heavily on database systems to store, process, and manage this user targeting
data. and personalized
advertising.
CHAPTER
8
234 Fundamentals of Database Systems
8.4.1.3. Analytics
Databases are used to store and analyze user data, enabling
insights into user behavior and preferences (Fair & Wesslen,
2019). This information is used to improve the user experience
and target advertising.
8.4.1.4. Advertising
Databases are used to store and manage advertising data,
including targeting criteria and ad performance. This data is used
to target advertising to the most relevant audience and optimize
ad performance.
CHAPTER
8
Applications of Database Systems 235
8.5. EDUCATION
Database systems play an important role in the management of
educational data, including student records, course schedules, and
academic performance.
CHAPTER
8
236 Fundamentals of Database Systems
8.5.2.2. Blackboard
Blackboard is an educational database used by colleges and
universities to manage course content, student engagement,
and academic performance. It provides features such as course
management, student engagement tracking, and academic
performance tracking.
8.5.2.3. Moodle
Moodle is an open-source educational database used by schools,
colleges, and universities to manage course content, student
engagement, and academic performance (Morreale et al., 2017). It
provides features such as course management, student engagement
tracking, and academic performance tracking.
CHAPTER
8
Applications of Database Systems 237
8.5.2.4. Edmodo
Edmodo is an educational database used by K-12 schools to
manage student engagement, course content, and academic
performance (Cook et al., 2010). It provides features such as
student engagement tracking, course management, and academic
performance tracking.
Overall, databases play a critical role in educational data
management, enabling educational institutions to manage data
efficiently and make informed decisions based on data analysis. Did you Know?
They provide a means of storing, analyzing, and accessing
According to a study by
educational information, ensuring that educational institutions can
Deloitte, effective supply
operate effectively and provide high-quality educational services
chain management can
to their students. lead to a 20% reduction
in supply chain costs
and a 15% increase in
8.6. LOGISTICS AND SUPPLY CHAIN customer satisfaction.
MANAGEMENT
Database systems play an important role in the management of
logistics and supply chain data, including inventory, shipping, and
transportation information (Figure 8.5).
CHAPTER
8
Applications of Database Systems 239
CHAPTER
8
240 Fundamentals of Database Systems
CHAPTER
8
Applications of Database Systems 241
CHAPTER
8
242 Fundamentals of Database Systems
8.8. SUMMARY
This chapter provides a brief overview of database systems, defining them as software
systems that manage and store large amounts of data. The importance of database
systems in various industries, such as e-commerce, healthcare, finance, social media,
education, and logistics, is highlighted. Database systems play a critical role in managing
product catalogs, customer orders, patient records, financial transactions, social media
data, student records, inventory, and delivery routes. The chapter also discusses the future
applications of database systems, particularly in managing and analyzing data from the
Internet of Things (IoT). The role of databases in storing, processing, and analyzing IoT
data to extract valuable insights is emphasized, along with examples of IoT databases
and their features.
REVIEW QUESTIONS
1. What is a database system and why is it important?
2. How do database systems play a critical role in managing data in various
industries?
3. What are some examples of data that are managed by database systems?
4. What is the future application of database systems and how do they relate to
IoT?
5. How do databases store, process, and analyze data from IoT devices?
REFERENCES
1. Allen, L., & Rai, A., (1996). Operational efficiency in banking: An international
comparison. Journal of Banking & Finance, 20(4), 655–672.
2. Barnes, S. J., & Vidgen, R. T., (2002). An integrative approach to the assessment
of e-commerce quality. J. Electron. Commer. Res., 3(3), 114–127.
3. Barrell, R., Davis, E. P., Karim, D., & Liadze, I., (2010). Bank regulation, property
prices and early warning systems for banking crises in OECD countries. Journal of
Banking & Finance, 34(9), 2255–2264.
4. Benitez, J., Ruiz, L., Castillo, A., & Llorens, J., (2020). How corporate social
responsibility activities influence employer reputation: The role of social media
capability. Decision Support Systems, 129(1), 113223.
5. Biancone, P. P., Saiti, B., Petricean, D., & Chmet, F., (2020). The bibliometric
analysis of Islamic banking and finance. Journal of Islamic Accounting and Business
Research, 11(9), 2069–2086.
6. Carah, N., (2014). Curators of databases: Circulating images, managing attention
and making value on social media. Media International Australia, 150(1), 137–142.
CHAPTER
8
244 Fundamentals of Database Systems
7. Christopher, M., (2016). Logistics & Supply Chain Management (Vol. 2, No. 1, pp.
4–7). Pearson UK.
8. Cook, D. A., Andriole, D. A., Durning, S. J., Roberts, N. K., & Triola, M. M., (2010).
Longitudinal research databases in medical education: Facilitating the study of
educational outcomes over time and across institutions. Academic Medicine, 85(8),
1340–1346.
9. Delis, M. D., (2012). Bank competition, financial reform, and institutions: The importance
of being developed. Journal of Development Economics, 97(2), 450–465.
10. Eastin, M. S., (2002). Diffusion of e-commerce: An analysis of the adoption of four
e-commerce activities. Telematics and Informatics, 19(3), 251–267.
11. Efendioglu, A. M., & Yip, V. F., (2004). Chinese culture and e-commerce: An exploratory
study. Interacting with Computers, 16(1), 45–62.
12. Elena, C. A., (2016). Social media–a strategy in developing customer relationship
management. Procedia Economics and Finance, 39, 785–790.
13. Ergungor, O. E., (2004). Market-vs. bank-based financial systems: Do rights and
regulations really matter? Journal of Banking & Finance, 28(12), 2869–2887.
14. Fair, G., & Wesslen, R., (2019). Shouting into the void: A database of the alternative
social media platform gab. In: Proceedings of the International AAAI Conference on
Web and Social Media (Vol. 13, pp. 608–610).
15. Farooq, M. U., Waseem, M., Mazhar, S., Khairi, A., & Kamal, T., (2015). A review on
internet of things (IoT). International Journal of Computer Applications, 113(1), 1–7.
16. Frazelle, E., (2002). Supply Chain Strategy: The Logistics of Supply Chain Management
(Vol. 3, No. 2, pp. 7–9). MCGraw-Hill Education.
17. Ghezzi, A., Gastaldi, L., Lettieri, E., Martini, A., & Corso, M., (2016). A role for
startups in unleashing the disruptive power of social media. International Journal of
Information Management, 36(6), 1152–1159.
18. Gubbi, J., Buyya, R., Marusic, S., & Palaniswami, M., (2013). Internet of things (IoT):
A vision, architectural elements, and future directions. Future Generation Computer
Systems, 29(7), 1645–1660.
19. Gupta, A., (2014). E-Commerce: Role of e-commerce in today’s business. International
Journal of Computing and Corporate Research, 4(1), 1–8.
20. Hossein, M. N., Mohammadrezaei, M., Hunt, J., & Zakeri, B., (2020). Internet of
things (IoT) and the energy sector. Energies, 13(2), 494.
21. Jain, V. I., Malviya, B.I., & Arya, S. A., (2021). An overview of electronic commerce
(e-Commerce). Journal of Contemporary Issues in Business and Government, 27(3),
666.
22. Kifer, M., (2007). Database Systems: An Application-Oriented Approach, Introductory
Version, 2/E (Vol. 4, No. 1, pp. 2–6). Pearson Education India.
23. Kroszner, R. S., Laeven, L., & Klingebiel, D., (2007). Banking crises, financial
dependence, and growth. Journal of Financial Economics, 84(1), 187–228.
CHAPTER
8
Applications of Database Systems 245
24. Larson, P. D., & Halldorsson, A., (2004). Logistics versus supply chain management:
An international survey. International Journal of Logistics: Research and Applications,
7(1), 17–31.
25. Lee, I., & Lee, K., (2015). The internet of things (IoT): Applications, investments,
and challenges for enterprises. Business Horizons, 58(4), 431–440.
26. Lummus, R. R., Krumwiede, D. W., & Vokurka, R. J., (2001). The relationship of
logistics to supply chain management: Developing a common industry definition.
Industrial Management & Data Systems, 101(8), 426–432.
27. Madakam, S., Lake, V., Lake, V., & Lake, V., (2015). Internet of things (IoT): A
literature review. Journal of Computer and Communications, 3(5), 164.
28. Mangan, J., & Lalwani, C., (2016). Global Logistics and Supply Chain Management
(Vol. 4, No. 1, pp. 7–10). John Wiley & Sons.
29. Morreale, S. P., Valenzano, J. M., & Bauer, J. A., (2017). Why communication
education is important: A third study on the centrality of the discipline’s content and
pedagogy. Communication Education, 66(4), 402–422.
30. Özsu, M. T., & Valduriez, P., (1996). Distributed and parallel database systems. ACM
Computing Surveys (CSUR), 28(1), 125–128.
31. Park, J. S., & Lee, C. H., (2021). Clinical study using healthcare claims database.
Journal of Rheumatic Diseases, 28(3), 119–125.
32. Rayport, J. F., & Jaworski, B. J., (2004). Introduction to e-commerce. McGraw-Hill
Irwin Marketspace, 5(1). 1–5.
33. Rupp-Serrano, K., & Robbins, S., (2013). Information-seeking habits of education
faculty. College & Research Libraries, 74(2), 131–142.
34. Singh, S. K., (2009). Database Systems: Concepts, Design and Applications (Vol.
2, No. 1, pp. 6–9). Pearson Education India.
35. Taher, G., (2021). E-commerce: Advantages and limitations. International Journal
of Academic Research in Accounting Finance and Management Sciences, 11(1),
153–165.
36. Tomar, D., Bhati, J. P., Tomar, P., & Kaur, G., (2019). Migration of healthcare relational
database to NoSQL cloud database for healthcare analytics and management. In:
Healthcare Data Analytics and Management (Vol. 1, pp. 59–87). Academic Press.
37. Torani, S., Majd, P. M., Maroufi, S. S., Dowlati, M., & Sheikhi, R. A., (2019). The
importance of education on disasters and emergencies: A review article. Journal of
Education and Health Promotion, 8(1), 5–8.
38. Uhde, A., & Heimeshoff, U., (2009). Consolidation in banking and financial stability
in Europe: Empirical evidence. Journal of Banking & Finance, 33(7), 1299–1311.
39. Wang, G., Li, X., & Wang, Z., (2016). APD3: The antimicrobial peptide database as
a tool for research and education. Nucleic Acids Research, 44(D1), D1087–D1093.
CHAPTER
8
INDEX
A audio 4
academic performance 235, 236, 237 auditing 22
academic performance tracking 236, 237 Availability 194, 195
accessibility 4, 16 B
account information 54
accounts receivable management 233 bank details 115
ACID (atomicity, consistency, isolation, durabil- banking 52, 53, 54, 93
ity) 193 banking systems 6
Adding attributes 117 Big data 5
administrative data 55 big data analytics 7
aggregated data 196 big data applications 50, 91, 102
agreement 33, 36 big data challenge 188, 189
airline reservation systems 60, 61 big data sets 185
Analytical data 186 Big Data technologies 189, 192
analytical endeavors 203 billing 229, 230, 231, 233
analytics 225, 228, 230, 232, 234, 235, 238, billing information 55, 63
239, 245 binary files 4
analyze customer behavior 4 Blackboard 236
Apache Spark 191 Bloomberg Terminal 232
application 34, 35, 39 blueprint 120
application serving 2 Boolean 170, 179
architecture 2, 3, 19, 24, 25, 28 broadcasting 191
artificial intelligence 5, 23 bulk filling 42
Artists table 168 bulk load 42
ASP 174 Business 203, 204, 208, 216, 221, 222, 223
Association entities 121 business data administration 40
Attributes 126, 127, 128, 140, 142, 143, 144, business intelligence (BI) 203, 206
145, 146 business logic layer 19
248 Fundamentals of Database Systems
online transaction processing (OLTP) 49, 104 product catalog management 228
open-source database language 171 product data 54, 97
operational business applications 208 product information 227
Operational reports 210 product inventory 227
optimization 2, 3, 20, 21, 24, 26, 28 programming code 171
Oracle 7, 164, 165, 169, 171, 173, 174, 175, programming errors 171
177, 178 project planning 214
Oracle Commerce 228 prototype 213, 214
Oracle Financials 232 purchasing 208
Oracle Supply Chain Management 238 Python 191, 192, 198
order information 54
Q
order management 228, 229
organizational hierarchy 52 Query 163, 164, 170, 171, 173, 176, 177, 179,
181, 182
P
query by example (QBE) 170
parental object 130 query data 163
parent-child relationships 52 Query execution 16
parent organization 130 Query execution performance 17
parsing 2 Query optimization 16, 20
Partition Tolerance 194 Query processing 2, 20, 26, 28
passenger data 63 QuickBooks 233
patient records 226, 229, 242
R
payment processing 229
payment records 230 R 191, 192, 199, 200, 201
performance 50, 53, 56, 57, 65, 68, 69, 70, 71, rational schema 37, 40, 41
72, 73, 78, 79, 80, 81, 82, 83, 85, 86, 87, 90, real-time analytics 50, 92, 95, 102
91, 92, 93, 96, 99, 100, 101, 102, 105, 108, 112 real-time market data 232
performance reporting 233 rebalancing 233
peripheral schema 40 Recommendation engines 84
personal information 233, 235 Record 164, 168, 182
personalization 228 Recursive associations 134
pharmacy management 231 recursive link 136
phone numbers 63 Redis 6
PHP 174 Referential integrity 6
physical data model 212 Refining 117, 156
Physical layout 119 reimbursement 229, 230, 231
portfolio management 232, 233 relational algebra 66
preliminary scheme 34 relational database management system (RD-
Primary keys 117, 140, 151 BMS) 6
Primary storage 1, 16, 25 relational demonstration 37
Privacy 186, 196 relational model 1, 6
problem-solving 4 relational paradigm 121, 151, 161
procedural programming languages 172 Relational tables 119, 121
relationships 1, 5, 6
Index 253
reporting 207, 208, 209, 210, 211, 212, 213, social networks 49, 81, 82, 83, 87, 88, 90, 103,
215, 217 189
requirements analysis 122, 123, 124, 125 software development life cycle 31, 47
requirements investigation 123 software engineering 31, 33, 40
Requirements specification 214 software invention 31
research 4, 26 software system 1, 15, 34
reservations 63 solid-state drives 2, 16
revenue cycle management 230 solitary entity 131, 136
Row 164, 168 source systems 203, 214, 218
Spark 186, 189, 191, 192, 198
S
Spark databases 189
safety implementation 40 Spark Streaming 191
sales figures 115 specialized applications 60, 61, 62, 63, 65
Saved query 171 spreadsheet 4
Scala 191, 192 SQL commands 164, 172, 175, 176
scalability 2, 18, 19, 24, 25, 27, 50, 53, 58, 60, SQL Microsoft Access 41
68, 72, 73, 86, 88, 89, 91, 92, 93, 96, 98, 100, Stabilization 152
102, 111 stakeholders 33
Scalability 186, 195, 199 statistics 118
scalable database models 53, 54, 55, 57 stock 227, 238
Schema 117 stock levels 54, 70
science 4 stored events 120
scientific research 73, 74, 75, 76, 84, 98 stowage schema 40
scratch 120 strategic decisions 4
searching 8 Structured data 4
search phrases 189 structured English query language (or SE-
search trends 188 QUEL) 173
Secondary storage 2, 16, 25 Structured Query Language (SQL) 6, 12, 13
security 2, 13, 14, 15, 18, 24, 26, 28 student engagement tracking 236, 237
semi-structured data 50, 87, 90, 93, 102, 103, student records 226, 235, 236, 242
104 Subject Oriented 205
Server 164, 169, 174, 176, 182 succeeding phase 33
Server Management Studio 41 suppliers 63, 76, 84
sets 58, 81, 95 supply chain data 237, 238
shared scheduling scheme 191 supply chain information 238, 239
shipping status 238 supply chain management 225, 237, 239, 245
Shopify 228 supply chain systems 50, 103
social connections 233 Sybase 7, 171
social media 225, 226, 233, 235, 242, 243, 244 system development life cycle 214
social media interactions 1
T
social media network 185
Social media platforms 233 Table 164, 167, 168, 169, 175
social media posts 50, 95 Target advertising 233, 234
254 Fundamentals of Database Systems
Fundamentals of
design principles and best practices. The fifth chapter delves into the fundamentals of
trends and consumer behavior allows her to
relational databases, including SQL querying, constraints, and transactions. This
develop effective campaigns that drive engage-
chapter provides practical tips and techniques for managing relational data and
ment, conversions, and ROI. Prior to her current
optimizing SQL queries. The sixth chapter discusses the role of big data in database
role, Kaitlyn worked as a Marketing Manager at
systems, including the challenges and opportunities presented by the increasing
several leading companies, where she honed her
volume, velocity, and variety of data. This chapter also covers the use of distributed
skills in brand development, campaign manage-
systems and cloud technologies for managing big data. The seventh chapter covers
ment, and customer acquisition. She has also
Database Systems
data warehousing and business intelligence (BI), including the design and develop-
worked as a freelance consultant, helping
ment of data warehouses (DWs), OLAP cubes, and the use of business intelligence tools
businesses of all sizes to create and execute
for data analysis and reporting. This chapter also covers data mining (DM) and predic-
effective marketing strategies. Kaitlyn holds a
tive analytics techniques. The eighth chapter explores the various applications of
Bachelor of Science in Marketing from the Univer-
database systems, including e-commerce, healthcare, and social media platforms. This
sity of California, Los Angeles (UCLA), where she
chapter highlights the diverse and growing role of databases in modern organizations
graduated with honors. She is a member of
and covers the unique challenges and opportunities presented by each industry.
several professional organizations, including the
With real-world examples, case studies, and practical exercises, Fundamentals of
American Marketing Association (AMA) and the
Database Systems provides readers with a comprehensive understanding of database
Kaitlyn Salter
Digital Marketing Association (DMA).
management, preparing them for success in today’s data-driven world.
ISBN 978-1-77956-170-1
00000
TAP
9 781779 561701
Toronto Academic Press
TAP TAP