Semantic Networks Standardisation
Semantic Networks Standardisation
A file system is a method for storing and organizing computer files and
the data they contain to make it easy to find and access them.
File systems may use a storage device such as a hard disk or CD-ROM
and involve maintaining the physical location of the files
The manual filing system works well when the number of items to be
stored is small. It even works quite adequately when there are large
numbers of items and we have only to store and retrieve them. However,
the manual filing system breaks down when we have to cross-reference
or process the information in the files. For example, a typical real estate
agent’s office might have a separate file for each property for sale or
rent, each potential buyer and renter, and each member of staff.
.
Each file called a flat file, contained and processed information for one
specific function, such as accounting or inventory. Programmers used
programming languages such as COBOL, C++ to write applications
that directly accessed flat files to perform data management services
and provide information for users.
In addition, early programmers focused on physical implementation and
access procedures when designing a database. These physical procedures
were written into database application; therefore, physical changes
resulted in intensive rework on the part of the programmer. As systems
became more complex, file processing systems offered little flexibility,
presented many limitations, and were difficult to maintain.
Limitations of the File-Based Approach
There are following problems associated with the File Based Approach:
Separated and Isolated Data
Duplication of data
Data Dependence
In file processing systems, files and records were described by specific
physical formats that were coded into the application program by
programmers. If the format of a certain record was changed, the code in
each file containing that format must be updated. Furthermore,
instructions for data storage and access were written into the
application’s code.
Therefore, changes in storage structure or access methods could greatly
affect the processing or results of an application.
Difficulty in representing data from the user’s view
Data Inflexibility
.
The description of the data is known as the Data Dictionary or Meta Data
(the ‘data about data’). It is the self-describing nature of a database that
provides program-data independence.
A database implies separation of physical storage from use of the data by
an application program to achieve program/data independence.
Using a database system, the user or programmer or application
specialist need not know the details of how the data are stored and such
details are “transparent to the user”. Changes (or updating) can be made
to data without affecting other components of the system. These changes
include, for example, change of data format or file structure or relocation
from one device to another.
Characteristics of data in a database
The data in a database should have the following features:
Shared:
Validity/Integrity/Correctness:
Security
Consistency: Whenever more than one data element in a database
represents related real world values, the values should be consistent with
respect to the relationship.
Non-redundancy
Independence: Data at different levels should be independent of each
other so that the changes in one level should not affect the other levels.
The hardware is the actual computer system used for keeping and
accessing the database. Conventional DBMS hardware consists of
secondary storage devices, usually hard disks, on which the database
physically resides, together with the associated
Software
The software is the actual DBMS. Between the physical database itself
(i.e. the data as actually stored) and the users of the system is a layer of
software, usually called the Database Management System or DBMS.
All requests from users for access to the database are handled by the
DBMS.
One general function provided by the DBMS is thus the shielding of
database users from complex hardware-level detail.
Data
It is the most important component of DBMS environment from the end
users point of view. As shown in above figure 1.2 observe that data acts
as a bridge between the machine components and the user components.
The database contains both the operational data and the meta-data, the
‘data about data’.
The database should contain all the data needed by the organization. One
of the major features of databases is that the actual data are separated
from the programs that use the data. A database should always be
designed, built and populated for a particular audience and for a specific
purpose.
Users
There are a number of users who can access or retrieve data on demand
using the applications and interfaces provided by the DBMS. Each type
of user needs different software capabilities. The users of a database
system can be classified in the following groups, depending on their
degrees of expertise or the mode of their interactions with the DBMS.
The users can be:
♦ Naive Users
♦ Online Users
♦ Application Programmers
♦ Sophisticated Users
♦ DBA
Naive Users
Naive Users are those users who need not be aware of the presence of the
database system or any other system supporting their usage. Naive users
are end users of the database who work through a menu driven
application program where the type and range of response is always
indicated to the user.
A user of an Automatic Teller Machine (ATM) falls in this category. The
user is instructed through each step of a transaction. He or she then
responds by pressing a coded key or entering a numeric value.
The operations that can be performed by naïve users are very limited and
affect only a precise portion of the database. For example, in the case of
the user of the Automatic Teller Machine, user’s action affects only one
or more of his/her own accounts.
Online Users
Online users are those who may communicate with the database directly
via an online terminal or indirectly via a user interface and application
program. These users are aware of the presence of the database system
and may have acquired a certain amount of expertise with in the limited
interaction permitted with a database.
Application Programmers
Professional programmers are those who are responsible for developing
application programs or user interface. The application programs could
be written using general purpose programming language or the
commands available to manipulate a database.
Sophisticated Users
Such users interact with the system without writing programs. Instead,
they form their requests in database query language.
Specialized Users
Such users are those who write specialized database application that do
not fit into the fractional data-processing framework. For example:
Computer-aided design systems, knowledge base and expert system,
systems that store data with complex data types (for example, graphics
data and audio data).
Database Administrator
The database administrator (DBA) is the person or group in charge for
implementing the database system within an organization. The DBA
has all the system privileges allowed by the DBMS and can assign
(grant) and remove (revoke) levels of access (privileges) to and form
other users. DBA is also responsible for the evaluation, selection and
implementation of DBMS package.
Procedures
Procedures refer to the instructions and rules that govern the design and
use of the database. The users of the system and the staff that manage the
database require documented procedures on how to use or run the
system.
These may consist of instructions on how to:
♦ Log on to the DBMS.
♦ Use a particular DBMS facility or application program.
♦ Start and stop the DBMS.
♦ Make backup copies of the database.
♦ Handle hardware or software failures.
♦ Change the structure of a table, reorganize the database across
multiple disks, improve performance, or archive data to secondary
storage.
Advantages of DBMS
Controlling Redundancy
Integrity can be enforced
Integrity of data means that data in database is always accurate, such
that incorrect information cannot be stored in database. In order to
maintain the integrity of data, some integrity constraints are enforced on
the database. A DBMS should provide capabilities for defining and
enforcing the constraints.
Inconsistency can be avoided
When the same data is duplicated and changes are made at one site,
which is not propagated to the other site, it gives rise to inconsistency
and the two entries regarding the same data will not agree. At such times
the data is said to be inconsistent. So if the redundancy is removed
chances of having inconsistent data is also removed.
Let us again consider the college system and suppose that in case of
General_Office file it is indicated that Roll_Number 5 lives in Amritsar
but in library file it is indicated that Roll_Number 5 lives in Jalandhar.
Then this is a state at which the two entries of the same object do not
agree with each other (that is one is updated and other is not). At such
time the database is said to be inconsistent.
In case of DBMS, Roll number and address occurs together only single
time in General_Office table. So, it needs single updation and then all
other application retrieve the address information from General_Office
which is updated so, all application will get the current and latest
information by providing single update operation and this single update
operation is propagated to the whole database or all other application
automatically, this property is called as Propagation of Update.
Data can be shared
Complexity
Size
Performance
Typically, a File Based system is written for a specific application, such
as invoicing. As result, performance is generally very good. However,
the DBMS is written to be more general, to cater for many applications
rather than just one. The effect is that some applications may not run as
fast as they used to.
Higher impact of a failure
The centralization of resources increases the vulnerability of the system.
Since all users and applications rely on the availability of the DBMS, the
failure of any component can bring operations to a halt.
Cost of DBMS
The cost of DBMS varies significantly, depending on the environment
and functionality provided. There is also the recurrent annual
maintenance cost.
♦ External Level
♦ Conceptual Level
♦ Internal Level
Objective of the Three Level Architecture
♦ Each user should be able to access the same data, but have a
different customized view of the data.
♦ User’s interaction with the database should be independent of
storage considerations.
♦ The Database Administrator (DBA) should be able to change the
database storage structures without affecting the user’s views.
It is the users’ view of the database. This level describes that part of the
database that is relevant to each user. External level is the one, which is
closest to the end users. This level deals with the way in which
individual users view data. Individual users are given different views
according to the user’s requirement.
External level is also known as the view level. In addition different
views may have different representations of the same data. For example,
one user may view dates in the form (day, month, year), while another
may view dates as (year, month, day).
Conceptual Level or Logical level
It is the community view of the database. This level describes what data
is stored in the database and the relationships among the data. The
middle level in the three level architecture is the conceptual level.
This level contains the logical structure of the entire database as seen by
the DBA. It is a complete view of the data requirements of the
organization that is independent of any storage considerations. The
conceptual level represents:
♦ All entities, their attributes, and their relationships;
♦ The constraints on the data;
♦ Security and integrity information.
.
Internal Level or Storage level
It is the physical representation of the database on the computer. This
level describes how the data is stored in the database. The internal level
is the one that concerns the way the data are physically stored on the
hardware.
The internal level covers the physical implementation of the database to
achieve optimal runtime performance and storage space utilization. It
covers the data structures and file organizations used to store data on
storage devices. It interfaces with the operating system access methods
to place the data on the storage devices, build the indexes, retrieve the
data, and so on.
The internal level is concerned with such things as:
♦ Storage space allocation for data and indexes;
♦ Record descriptions for storage (with stored sizes for data items);
♦ Record placement;
♦ Data compression and data encryption techniques.
The data manager sends the request for a specific physical record to the
file manager. The file manager decides which physical block of
secondary storage devices contains the required record and sends the
request for the appropriate block to the disk manager. A block is a unit of
physical input/output operations between primary and secondary storage.
The disk manager retrieves the block and sends it to the file manager,
which sends the required record to the data manager.