2.8 Databases
A Database is a structured collection of data that is managed
to meet the needs of a community of users (Chang, 2007). The structure is
achieved by organizing the data according to a database model. The model in
most common use today is the relational model. Other models such as the
hierarchical model and the network model use a more
explicit representation of relationships. A computer database
relies upon software to organize the storage of data. This is defined as
database management system (DBMS). Some terms whose meaning is required to
understand databases are (Chang, 2007):
· File
A file is an ordered arrangement of records in which each
record is stored in a unique identifiable location. The sequence of the record
is then the means by which the record will be located. In most computer
systems, the sequence of records is either alphabetic or numeric based on field
common to all records such as name or number.
· Records
A record or tuple is a complete set of related fields. For
example, Table 2.3 shows a set of related fields, which is a record. In other
words, if this were to be a part of a table then we would call it a row of
data. Therefore, a row of data is also a record.
Table 2.3: Set of related fields in an irrigation system
which form a record
Id_plot #laterals #sprinklers Flow rate
|
|
Field Record
|
Nyombe 255 445 250
|
|
|
· Field
A field is a property or a characteristic that holds some
piece of information about an entity. Also, it is a category of information
within a set of records. For example, the first names, or address or phone
numbers of people listed in address book.
· Relations
In the relational data model, the data in a database is
organized in relations. A relation is synonymous with a =table`. A table
consists of columns and rows, which are referred as field and records in DBMS
terms, and attributes and tuples in Relational DBMS terms. A comparison between
DBMS and RDBMS terms is given in Table 2.4.
· Attributes
An attribute is a property or characteristics that hold some
information about an entity. An irrigation network for example starts from a
pumping station which has attributes such as a name, given number of pumps and
engines etc.
Table 2.4: Comparing DBMS and Relational DBMS (RDBMS)
terms
Common Term DBMS Terminology RDBMS
Terminology
Database Table Database
Table Table Relation
Column Field Attribute
Row Record Tuple
2.8.1 Database management systems
A Database Management System (DBMS) is a set of computer
programs that control the creation, maintenance, and the use of the database of
an organization and its end users (Codd, 1970). It controls the organization,
storage, management, and retrieval of data in a database. DBMS are categorized
according to their data structures or types, sometime DBMS is also known as
database manager. It is a set of prewritten programs that are used to store,
update and retrieve a database. A DBMS includes:
- A modeling language to define the scheme of each database
hosted in the DBMS, according to the DBMS data model.
- Data structures (fields, records, files and objects)
optimized to deal with very large amounts of data stored on a permanent data
storage device (which implies relatively slow access compared to volatile main
memory).
- A database query language and report writer to allow users
to interactively interrogate the database, analyze its data and update it
according to the users privileges on data.
The four most common types of organizations are the
hierarchical, network, relational and object models. Inverted lists and other
methods are also used. A given database management system may provide one or
more of the four models. The optimal structure depends on the natural
organization of the application's data, and on the application's requirements
(which include transaction rate (speed), reliability, maintainability,
scalability, and cost).
Some DBMS software include Microsoft Access, Oracle DB2,
Sybase Adaptive Server Enterprise, FileMaker Firebird, INGRES, Informix,
Microsoft SQL Server, Microsoft
Visual FoxPro, MySQL, PostgreSQL, Progress, SQLite, Teradata,
CSQL, OpenLink Virtuoso.
Some benefits obtained from the use of DBMS could include:
· Improved strategic use of corporate data,
· Reduced complexity of the organization`s information
systems environment,
· Reduced data redundancy and inconsistency,
· Enhanced data integrity,
· Application-data independence,
· Improved security,
· Improved flexibility of information systems,
· Increased access and availability of data and
information,
· Logical & physical data independence,
· Concurrent access anomalies,
· Facilitate atomicity problem,
· Provides central control on the system through database
applications.
|