Page 248 -
P. 248
Chapter 6 Foundations of Business Intelligence: Databases and Information Management 247
rows of data. Each individual element of data for each entity is stored as a
separate field, and each field represents an attribute for that entity. Fields in
a relational database are also called columns. For the entity SUPPLIER, the
supplier identification number, name, street, city, state, and zip code are stored
as separate fields within the SUPPLIER table and each field represents an
attribute for the entity SUPPLIER.
The actual information about a single supplier that resides in a table is called
a row. Rows are commonly referred to as records, or in very technical terms, as
tuples. Data for the entity PART have their own separate table.
The field for Supplier_Number in the SUPPLIER table uniquely identifies
each record so that the record can be retrieved, updated, or sorted. It is called a
key field. Each table in a relational database has one field that is designated as
its primary key. This key field is the unique identifier for all the information
in any row of the table and this primary key cannot be duplicated. Supplier_
Number is the primary key for the SUPPLIER table and Part_Number is the
primary key for the PART table. Note that Supplier_Number appears in both
the SUPPLIER and PART tables. In the SUPPLIER table, Supplier_Number is the
primary key. When the field Supplier_Number appears in the PART table, it is
called a foreign key and is essentially a lookup field to look up data about the
supplier of a specific part.
Operations of a Relational DBMS
Relational database tables can be combined easily to deliver data required by
users, provided that any two tables share a common data element. Suppose we
wanted to find in this database the names of suppliers who could provide us
with part number 137 or part number 150. We would need information from
two tables: the SUPPLIER table and the PART table. Note that these two files
have a shared data element: Supplier_Number.
In a relational database, three basic operations, as shown in Figure 6.5, are
used to develop useful sets of data: select, join, and project. The select operation
creates a subset consisting of all records in the file that meet stated criteria.
Select creates, in other words, a subset of rows that meet certain criteria. In
our example, we want to select records (rows) from the PART table where the
Part_Number equals 137 or 150. The join operation combines relational tables
to provide the user with more information than is available in individual tables.
In our example, we want to join the now-shortened PART table (only parts 137
or 150 will be presented) and the SUPPLIER table into a single new table.
The project operation creates a subset consisting of columns in a table, permit-
ting the user to create new tables that contain only the information required. In
our example, we want to extract from the new table only the following columns:
Part_Number, Part_Name, Supplier_Number, and Supplier_Name.
Non-Relational Databases and Databases in the Cloud
For over 30 years, relational database technology has been the gold standard.
Cloud computing, unprecedented data volumes, massive workloads for Web
services, and the need to store new types of data require database alterna-
tives to the traditional relational model of organizing data in the form of tables,
columns, and rows. Companies are turning to “NoSQL” non-relational database
technologies for this purpose. Non-relational database management systems
use a more flexible data model and are designed for managing large data sets
across many distributed machines and for easily scaling up or down. They are
useful for accelerating simple queries against large volumes of structured and
MIS_13_Ch_06 Global.indd 247 1/17/2013 2:27:42 PM