Data storage: File-oriented system
As discussed earlier, the manual paper-based data storage
possesses many disadvantages. This manual system was replaced by the
computerized filling system. File oriented systems were the first attempt to
computerize the data storage and various operations on data.
database system concepts
So, before the advent of DBMS, organizations were using the
file systems supported by operating systems to store data. To perform various
operations on these data, such as – insert, update, delete, sort, search –
system had a number of application programs developed using some programming
language. These application programs directly interact with the file system of
the operating system, and operating systems in turn interact with the files on
disk to perform various operations.
Let’s consider here a bank enterprise. Suppose a bank allows
two different kinds of accounts – saving accounts and current accounts. So, to
manage data about these two types of accounts, two different files are used
One file, to store details about all customers having saving
account, and another, to store details about all customers having current
account.
Also, system contains a number of programs to perform
various tasks on these data. These programs are developed by application
programmers using some programming language, such as c, c++, java, etc. some of
the tasks are
Debit or Credit an account
Find balance of a given account,
Find customer id, name, address, e-mail and contact number
for all customers.
Khudiram Bose history
Such type of system looks simpler. But, it suffers from
several serious drawbacks, particularly in comparison with DBMS. These
drawbacks are described in due to these drawbacks, file-oriented systems are
almost obsolete.
Why to learn File-oriented system?
With advent of DBMS, the File-Oriented systems are almost
obsolete now. Though, learning of file-oriented systems provide following
advantages.
1.
It provides useful historical information about
how data are managed earlier.
2.
Characteristics of File-Oriented systems provide
understanding complexities in designing a database.
3.
File-Oriented systems create many problems. Knowledge of those problems can help to
stop problems of managing database.
4.
It provides useful knowledge for converting a
file system to a database system.
Advantages of File-Oriented system
File oriented systems possess some advantages compared to
paper-based system. These advantages are given below.
Back-up :
It is possible to require faster and automatic back-up of database
stored in files of computer-based systems. Computer systems provide
functionalities to serve this purpose. It is also possible to develop specific
application programs for this purpose.
Holi essay in English 2020
Editing:
It is easy to edit any
information stored in computers in sort of files.
Specific application programs or editing software are often used for this purpose.
Specific application programs or editing software are often used for this purpose.
Remote access:
In computer-based
systems, it's possible to access data
remotely. So, to access data, it's not
necessary for a user to stay present at
location where these data are kept.
Sharing:
Data stored in files of
computer-based systems are often shared
among multiple users at a same time.
In general, file-oriented systems overcome the problems
suffered by the paper-bases systems. So, File-Oriented systems are far better
than paper-based systems. But, there are drawbacks of file-oriented systems too
as given in next sub-section.
Disadvantage of File-Oriented System
Data redundancy:
It is possible that an equivalent information could
also be duplicated in several files.
This leads to data redundancy. Data redundancy results in memory wastage.
For example, consider that
some customers have both sorts of accounts-saving
and current. during this case, data about
customers – name, address, e mail, contact number – are
going to be duplicated in both files, file for saving accounts and
file for current accounts. This leads to requirement f higher storage
space. In other words, same information will be stored in two different
locations and, it wastes memory.
Limited data sharing:
Data are scattered in various files. Also,
different files may have different formats and these files could also be stored in
several folders (directories) could also
be of various computers of various departments. So, due to this data
isolation, it is difficult to share data among different application.
Concurrent access anomalies:
This
is often for the sake of higher performance
and faster response.
Consider an operation to debit and account. The program reads the old balance, calculates the new balance, and writes new balance back to database suppose an account features a balance of Rs. 5000. Now, a concurrent withdrawal of Rs. 1000 and Rs. 2000 may leave the balance Rs. 4000 or Rs. 3000 depending upon their completion time instead of the right value of Rs. 2000.But, thanks to lack of co-ordination among different application programs, this is often impossible in file processing systems.
Consider an operation to debit and account. The program reads the old balance, calculates the new balance, and writes new balance back to database suppose an account features a balance of Rs. 5000. Now, a concurrent withdrawal of Rs. 1000 and Rs. 2000 may leave the balance Rs. 4000 or Rs. 3000 depending upon their completion time instead of the right value of Rs. 2000.But, thanks to lack of co-ordination among different application programs, this is often impossible in file processing systems.
Integrity problems:
Data integrity means the info contained within
the database is both correct and consistent. For this
purpose, the info stored in database must
satisfy certain sorts of constraints
(rules).
For example, a balance for any account must not be but zero. Such constraints are enforced within the system by adding appropriate code in application programs. But, when new constraints are added, like balance shouldn't be but Rs. 5000, application programs got to be changed. But, it's not and straightforward task to vary programs whenever required.
For example, a balance for any account must not be but zero. Such constraints are enforced within the system by adding appropriate code in application programs. But, when new constraints are added, like balance shouldn't be but Rs. 5000, application programs got to be changed. But, it's not and straightforward task to vary programs whenever required.
Difficulty in accessing data :
Accessing data isn't convenient
and efficient in file processing system.
For example, suppose, there's a program to seek out information about all customers. But, what if there's a requirement to seek out out all customers from some particular city. during this case, there are two choices here: one, determine all customers using available program, then extract the needed customers manually. Second, develop new program to urge required information. Both options aren't satisfactory. for every and each different quite data access, separated programs are required. this is often neither convenient nor efficient.
For example, suppose, there's a program to seek out information about all customers. But, what if there's a requirement to seek out out all customers from some particular city. during this case, there are two choices here: one, determine all customers using available program, then extract the needed customers manually. Second, develop new program to urge required information. Both options aren't satisfactory. for every and each different quite data access, separated programs are required. this is often neither convenient nor efficient.
worst natural disasters in the world last 10 years
Atomicity problems:
Any operation on database must be atomic. this suggests , it must happen in its entirely or
not in the least .
For example, a fund transfer form one account to a different must happen in its entirely. But, computer systems are susceptible to failure, like system crash, virus attack. If a system failure occurs during the execution of fund transfer operation, it's going to possible that quantity to be transferred , say, Rs. 500, is debited from one account, but isn't credited to a different account.
This leaves database in inconsistent state. But, it's difficult to make sure atomicity during a file processing system.
For example, a fund transfer form one account to a different must happen in its entirely. But, computer systems are susceptible to failure, like system crash, virus attack. If a system failure occurs during the execution of fund transfer operation, it's going to possible that quantity to be transferred , say, Rs. 500, is debited from one account, but isn't credited to a different account.
This leaves database in inconsistent state. But, it's difficult to make sure atomicity during a file processing system.
Data inconsistency:
Due t data redundancy, it's possible
that data might not be in consistent
state. for instance , consider that an
address of some customer changes. And, that customer has both sorts of accounts. Now, it's possible
that this changed address is updated in just one
file, leaving address in other file because it is.
As a results of this, same customer will
have two different addresses in two different files, making data inconsistent.
Security problems:
Database should be accessible to users during a limited way. For example, a customer can
check balance just for his/her own account
he/she shouldn't have access to
information about other accounts.
But, in file processing system, application programs are added in a billboard hoc manner by different programmers. So, it's difficult to enforce such quite security constraints.
Metadata and system catalog
But, in file processing system, application programs are added in a billboard hoc manner by different programmers. So, it's difficult to enforce such quite security constraints.
Metadata and system catalog
Metadata:
A metadata is that the data about data.
This means that data such as table name, column name, data
type, size, constraints, authorized users, user access privileges for any table
is called metadata for that table.
Metadata describes various objects, such as tables, in the
database. Also, it makes it easier to access or manipulate those objects.
Metadata provides program-data independence. This means that
data can be changed without requiring changes in application programs.
System catalog:
A system catalog is a repository for a metadata.
System catalog is a system-created database.
It contains description of all database objects, data
dictionary information and user access information.
It also contains table-related description such as table
names, owners, column names, data types, size, constraints, authorized users,
user access privileges and so on.
System catalog is created by DBMS itself. It is managed in
similar fashion as user-data are managed. The illustrates the differences
between user-data and system-data.
Post a Comment
Please do not enter any spam link in the comment box.