write short notes on:
Ø This is a function that maps from the entity set into
a domain, whereby its value can be derived from the values
of other related attributes or entities. For example the Lecturer entity
set has an attribute age that indicates the Lecturer’s age. If the Lecturer entity set also has an attribute date
of birth, we can calculate age from date of birth and the
current date (Silberschatz Et Al. 2011).
Ø Data flow diagrams (DFDs) is the diagram which reveals
the relationships among and between the various components in a program or
system. DFDs are an important technique for modeling a system’s high-level detail
by showing how input data can be transformed to output results through a
sequence of functional transformations. DFDs consist of four major components
which are entities, processes, data stores, and data flows. (Donald 2017)
Figure 1: data flow diagram; Retrieved from https://www.visual-paradigm.com/tutorials/data-flow-diagram-example-supermarket-app.jsp
c) Database and DBMS
Ø The database is a collection of
data, which stores the data required for a given task in an organised way,
grants access to them, and at the same time safeguards the integrity of the
units, and protects them from any harm (Elmasri,
Ø A database-management
system (DBMS) is a
collection of interrelated data and a set of programs to access those data.
d) ER Model
Ø The ER model is the abbreviation of Entity Relational
Model. It defines the conceptual view of a database The ER model is very
useful in mapping the meanings and interactions of real-world enterprises onto
a conceptual schema. Because of this usefulness, many database-design tools
draw on concepts from the E-R model. The E-R data model uses the three basic
concepts which are entity sets, relationship sets, and attributes.
e) SQL as a high level language used DB
Ø The name SQL is presently expanded as Structured
Query Language. It was originally called SEQUEL (Structured English Query
Language) and was designed and implemented at IBM Research as the interface for
an experimental relational database system called SYSTEM R. An SQL language is
now the standard language for commercial relational DBMS’s.
2. To define Relational Database and distinguish
it from a Table.
Ø Relational Database is
a database which is based on the
relational model that means it presents information in
tables with rows and columns. It uses
a collection of tables to represent both data and the relationships among those
data. It also includes a DML and DDL
Ø A table is referred to as a
relation in the sense that it is a collection of objects of the same type
Thus the major difference between the
relational database and table is:
Ø Data in a table can be related according
to common keys or concepts, and the ability to retrieve related data from a
table is the basis for the term relational database.
A 3-Tier Architecture separates its Tiers from each other based on the
complexity of the users and how they use the data present in the DB, hence the
most widely used Architecture to design a DBMS
By use of the 3-Tier
Architecture, illustrate how the functional process Logic, Data Access,
Computer Data Storage and User Interface are developed and maintained as
Independent modules on separate platforms.
The 3-Tier Architecture
facilitates what is called data independence. Data independence can be defined as the capacity to change the schema at
one level of a database system without having to change the schema at the next
higher level. We can define two types of data independence as Logical data
independence and physical data independence.
3-tier architecture the functional process logic must be separated from
Data Access, Computer Data Storage and User Interface as follows using the two
types of independencies;
Ø Logical data independence;
This is the
capacity to change the conceptual schema without having to change external
schemas or application programs. We may change the conceptual schema to expand
the database (by adding a record type or data item), to change constraints, or
to reduce the database (by removing a record type or data item) in a way that
external schemas that refer only to the remaining data should not be affected.
Here the logical data is separated from physical data (that is data access,
user interface and computer Data storage is separated) (Shweta, 2009).
The following is
the diagram showing the independencies;
Figure 2: logical data independence; retrieved from http://player.slideplayer.com/16/5212349/#
Ø Physical data independence:
This is the
capacity to change the internal schema without having to change the conceptual
schema. Hence, the external schemas should not be changed as well. Changes to
the internal schema is needed because some physical files were reorganized, for
example, by creating additional access structures to improve the performance of
retrieval or update. If the same data as before remains in the database, we
should not have to change the conceptual schema. This means that physical data
(data access, user interface and computer Data storage) is separated from the logical
data (conceptual schema) (Shweta, 2009).
3 : Physical data independence; retrieved from https://www.tutorialcup.com/dbms/data-independence.htm
To mention and explain at least four Database utilities.
A loading utility
is used to load existing data files-such as text files or sequential files-into
the database. Usually, the current (source) format of the data file and the
desired (target) database file structure are specified to the utility, which
then automatically reformats the data and stores it in the database. With the
proliferation of DBMSs, transferring data from one DBMS to another is becoming
common in many organizations. Some vendors are offering products that generate
the appropriate loading programs, given the existing source and target database
storage descriptions (internal schemas). Such tools are also called conversion
tools (Shweta, 2009).
backup utility creates a backup copy of the database, usually by dumping the
entire database onto tape. The backup copy can be used to restore the database in
case of catastrophic failure. Incremental backups are also often used, where only
changes since the previous backup are recorded. Incremental backup is more
complex but saves space (Shweta, 2009).
File Reorganization utilities:
This utility can
be used to reorganize a database file into a different file organization to
Performance Monitoring utilities:
Such a utility
monitors database usage and provides statistics to the DBA. The DBA uses the
statistics in making decisions such as whether or not to reorganize files to
improve performance (Shweta, 2009).
b) Define and
write short notes on:
DDL provides commands for defining relation schemas, deleting relations, and
modifying relation schemas used by the DBA and by database designers to define
both schemas. The DBMS will have a DDL compiler whose function is to process
DDL statements in order to identify descriptions of the schema constructs and
to store the schema description in the catalog. Examples of commands statements
for DDL are CREATE, ALTER, DROP, TRUNCATE, COMMENT, and RENAME (Tibor, 2011).
Once the database
schemas are compiled and the database is populated with data, users must have
some means to manipulate the database. Typical manipulations include retrieval,
insertion, deletion, and modification of the data. The DBMS provides a set of
operations or a language called the data manipulation language (DML)
for these purposes. The examples of DML statements are SELECT, INSERT, UPDATE,
DELETE, MERGE, CALL, EXPLAIN PLAN and LOCK TABLE.
An attribute of an
entity set is a function that maps from the entity set into a domain. Since an
entity set may have several attributes, each entity can be described by a set
of (attribute, data value) pairs, one pair for each attribute of the entity set.
They are descriptive properties possessed by each member of an entity set. It expresses
that the database stores similar information concerning each entity in the
entity set; however, each entity may have its own value for each attribute.
A relationship is an association among several entities. Relationships
are mapped with entities in various ways. Mapping cardinalities define the
number of association between two entities. Mapping cardinalities: one to one,
one to many, many to one, many to many
a) To explain the advantages of DBMS
Data independence and efficient access.
Since database application programs are independent of the details of
data representation and storage, this means that the conceptual and external
schemas provide independence from physical storage decisions and logical design
decisions respectively. Also a DBMS provides efficient storage and retrieval
mechanisms, including support for very large files, index structures and query optimization.
Reduced application development time.
Since the DBMS provides several important functions
required by applications, such as concurrency control and crash recovery, high
level query facilities, etc., only application-specific code needs to be
written. Even this is facilitated by suites of application development tools available
from vendors for many database management systems.
Data integrity and security.
The view mechanism and the authorization facilities of a DBMS provide a
powerful access control mechanism. Further, updates to the data that violate
the semantics of the data can be detected and rejected by the DBMS if users
specify the appropriate integrity
By providing a common umbrella for a large collection of data that is
shared by several users, a DBMS facilitates maintenance and data administration
tasks. A good DBA can effectively shield end-users from the chores of
fine-tuning the data representation and periodic back-ups.
A DBMS supports the notion of a transaction, which is conceptually a single user’s
sequential program. Users can write transactions as if their programs were
running in isolation against the database. The DBMS executes the actions of
transactions in an interleaved fashion to obtain good performance, but
schedules them in such a way as to ensure that conflicting operations are not
permitted to proceed concurrently.
The DBMS maintains a continuous log of the changes to the data, and if
there is a system crash, it can restore the database to a transaction-consistent state. That is, the
actions of incomplete transactions are undone, so that the database state
reflects only the actions of completed transactions. Thus, if each complete
transaction, executing alone, maintains the consistency criteria, then the
database state after recovery from a crash is consistent.
Compare and contrast the Traditional System and the DBMS
File processing system and DBMS:
A database management system (DBMS)
coordinates both the physical and the logical access to the data,
whereas a file-processing system coordinates only the physical access.
A database management system is
designed to allow flexible access to data (i.e. queries), whereas a
file-processing system is designed to allow predetermined access to data (i.e.
A database management system is
designed to coordinate multiple users accessing the same data at the same time while
a file-processing system is usually designed to allow one or more programs to
access different data files at the same time. In a file-processing system, a
file can be accessed by two programs concurrently only if both programs have
read-only access to the file.
Redundancy is control in DBMS, but
not in file system.
Unauthorized access is restricted
in DBMS but not in the file system.
DBMS provide backup and recovery
whereas data lost in file system can’t be recovered.
DBMS provide multiple user
interfaces while Data is isolated in file system.
Similarities between DBMS
and file-processing system:
and file-processing system are storing data on a
permanent storage media. For example, both have the concept of block level
storage that is database blocks and filesystem blocks – which is the smallest
contiguous number of bytes for physically storing the information.
Both database and file-processing
system have “indexes” which speed up
access to the data. There is also a
consideration of migration where by both database and filesystem migration
entailed one key requirements: whenever data is being move, reading
and writing to the data must be halted/disabled. The migration can be online
migration or offline migration (Elmasri, Ramez. 2011).
Both filesystem and database concept have
the four key element properties of transactions that is ACID. ACID stands for Atomicity (Atomicity represents the fact that a transaction is an
indivisible unit of execution),
demands that the carrying out of the transaction does not violate any of the
integrity constraints defined on the database),
Isolation (Isolation demands
that the execution of a transaction is independent of the simultaneous
execution of other transactions
) and Durability (demands that
the effect of a transaction that has correctly executed a commit is not lost.
In practice, a database must guarantee that no piece of data is lost for any reason
(Elmasri, Ramez, 2011).
Donald S (2017). Understanding Data Flow Diagrams
Retrieved from https://ratandon.mysite.syr.edu/cis453/notes/DFD_over_Flowcharts.pdf
on 12 December 2017 at 15:16 PM.
Elmasri, Ramez. (2011).Fundamentals of database
systems.6th edition. New York. Pearson
Shweta (2009). Database Management System (DBMS).retrieved
Al. (2011). Database system concepts, sixth edition. New York, NY 10020. The McGraw-Hill Companies
(2011). Advanced DBMS retrieved from aries.ektf.hu/~hz/pdf-tamop/pdf-xx/Radvanyi-hdbms-eng2.pdf
on December 13, 2017 at 15:06 PM