Types of Dbms
Types of Dbms
Advantage
Hierarchical database can be accessed and updated rapidly because in this model
structure is like as a tree and the relationships between records are defined in advance.
This feature is a two-edged.
Disadvantage
This type of database structure is that each child in the tree may have only one parent,
and relationships or linkages between children are not permitted, even if they make sense
from a logical standpoint.
Hierarchical databases are so in their design. it can difficult for adding a new field or
record requires that the entire database be redefined.
NETWORK DATABASE
A network databases are mainly used on a large digital computers.
It more connections can be made between different types of data, network databases are
considered more efficiency It contains limitations must be considered when we have to
use this kind of database.
It is updated version of the hierarchical databases. Network databases are similar to
hierarchical databases by also having a hierarchical structure. A network database looks
more like a cobweb or interconnected network of records.
In network databases, children are called members and parents are called occupier. The
difference between each child and member can have more than one parent.
It supports many-to-many relationships.
2.) Operational Anomalies- The insertion, deletion and updating operations of any record
require large number of pointers adjustments.
3.) Absence of structural independence-structural changes to the database is very difficult.
All records in other tables having a link to that entry will show the change.
2. Complex queries can be carried out. A language called SQL has been developed to allow
programmers to 'Insert', 'Update', 'Delete', 'Create', 'Drop' table records.
3. Better security. By splitting data into tables, certain tables can be made confidential. When a
person logs on with their username and password, the system can then limit access only to those
tables whose records they are authorized to view.
4. Cater for future requirements. By having data held in separate tables, it is simple to add
records that are not yet needed but may be in the future.
5. Ease of use: The revision of any information as tables consisting of rows and columns is
much easier to understand.
6. Flexibility: Different tables from which information has to be linked and extracted can be
easily manipulated by operators such as project and join to give information in the form in which
it is desired.
7. Precision: The usage of relational algebra and relational calculus in the manipulation of the
relations between the tables ensures that there is no ambiguity, which may otherwise arise in
establishing the linkages in a complicated network type database.
Summary - advantages of a relational database over flat file
· Avoids data duplication
· Avoids inconsistent records
· Easier to change data
· Easier to change data format
· Data can be added and removed easily
· Easier to maintain security.
1. Performance: A major constraint and therefore disadvantage in the use of relational database
system is machine performance. If the number of tables between which relationships to be
established are large and the tables themselves effect the performance in responding to the SQL
queries.
2. Physical Storage Consumption: With an interactive system, for example an operation like
join would depend upon the physical storage also. It is, therefore common in relational databases
to tune the databases and in such a case the physical data layout would be chosen so as to give
good performance in the most frequently run operations. It therefore would naturally result in the
fact that the lays frequently run operations would tend to become even more shared.
3. Slow extraction of meaning from data: if the data is naturally organized in a hierarchical
manner and stored as such, the hierarchical approach may give quick meaning for that data.
4. Data Complexity: Data in an RDBMS resides in multiple tables, which are linked to each
other through shared key values. An RDBMS does not force database designers to impose a
coherent table structure; inexperienced programmers may design systems that create unnecessary
complexity or limit the future development of the database through poorly chosen data types.
The flexibility of an RDBMS presents a double-edged sword. Experienced designers work
magic, but inexperienced designers wreak havoc on a company's data.
5. Broken Keys and Records: Relational databases require shared keys to link information
spread across several tables. For example, a customer table may include client demographics,
with a unique index number identifying the record within the table. A sales table may identify
the customer only by that index number. If the data types linking the keys are different, the
database cannot link the records without additional rework by the report developer. Likewise, if a
table lacks a unique key, the database may return inaccurate results. If the application accessing a
database isn't coded to lock records during an edit, users could inadvertently corrupt data, leading
to broken records.
6. Developer Expertise: As the complexity of a relational database increases, the skill set
required by the RDBMS administrator, various users and report developers also increases. A
mission-critical database may require expertise that exceeds the budget of a small business;
furthermore, if the developers did not uniformly engage in best practice design, a subsequent
developer may not understand hidden intricacies that could lead to broken queries or inaccurate
reports. This risk increases if database and application development is performed by different
people.
Following are the two different approaches for designing an object-oriented database:
Designed to store, retrieve and manage objects created by programs written in some
object oriented languages (OOL) such as C++ or java.
Although a relational database can be used to store and manage objects, it does not understand
objects as such. Therefore, a middle layer called object manager or object-oriented layer
software is required to translate objects into tuples of a relation.
The user will create classes, objects, inheritance and so on and the database system will store and
manage these objects and classes. This second approach, thus, turns non-OOPLs into OOPLs. A
translation layer is required to map the objects created by user into objects of the database
system.
FEATURES OF OODBMS:
Able to handle large databases: This feature· includes the optimal "management of very large
databases using techniques like Data clustering, Data buffering, Query optimization, Access path
selection and Index management.
Controlled Concurrency: This feature guarantees harmonious coexistence among users.
Working simultaneously on the database and enjoying controlled sharing. By allowing multiple
transactions to run concurrently will improve the performance of the system in terms of
increased throughout or improved response time. Ensuring consistency in spite of concurrent
execution of transaction require additional effort which is performed by the concurrency
controller system of DBMS.
Restoring or Data Recovery: This feature indicates the restoration of the system to a state that
existed before the software or hardware based crash such as processor or disk failure. The
recovery refers to the various strategies and procedures involved in protecting your database
against data loss and reconstructing the data such that no data- is lost after failure.
Query facility on basis: This feature includes the facility of applying query that should be
efficient using query optimization and application independent that can work on any database.
Identity of an object: This feature ensures that each object is assigned an Object Identifier
(OID) when it is created. Object identity assists OODBMS to uniquely identify an object,
thereby automatically providing entity integrity. In fact, as object identity ensures system-wide
uniqueness, it provides a stronger constraint than the relational data model's entity integrity,
which requires any uniqueness within a relation.
Feature of Classes and types: This feature supports the notion of classes and types for defining
a set of similar objects. Objects that have the safe attributes and respond to the same messages
can be grouped together to form a class. The attributes and associated methods are defined once
for the' class rather than separately for each object. The type of variables and expressions help to
do the type checking at compile time, to check the correctness of the programs.
Property of encapsulation: This property of OODBMS implies that an object contains both the
data structure and the set of operations that can be used to manipulate it. An object is said to
encapsulate (hide) data and program. This means that the user cannot see the inside of the object
but can use the object by calling the program part of the object.
Property of Inheritance: This property of OODBMS implies that feature of objects by which
instances of a class can have access to data and programs contained in a previously defined class,
without those definitions being restarted. The different types of inheritance used for refusing the
code are substitution inheritance, inclusion inheritance, constraint inheritance and specialization.
Property of overriding combined with late binding: This property of OODBMS implies the
ability to use the same message to objects different classes and have them behave differently.
Thus we can define the message "+" for both the addition of numbers and the concatenation
-joining) of characters, even though both these operations are completely different. This feature
provides the' ability to use the same word to invoke different methods, according to similarity of
meaning. Here the late binding is being done as the- system cannot bind operation names to
programs at compile time and thus, operation names are resolved at run-time.
ADVANTAGES OF OODBMSS
OODBMSs can provide appropriate solutions for many types of advanced database applications.
However, there are also disadvantages.
Enriched modeling capabilities
The object-oriented data model allows the 'real world' to be modeled more closely. The object,
which encapsulates both state and behavior, is a more natural and realistic representation of real-
world objects. An object can store all the relationships it has with other objects, including many-
to-many relationships, and objects can be formed into complex objects that the traditional data
models cannot cope with easily.
Extensibility
OODBMSs allow new data types to be built from existing types. The ability to factor out
common properties of several classes and form them into a superclass that can be shared with
subclasses can greatly reduce redundancy within system is regarded as one of the main
advantages of object orientation. Further, the reusability of classes promotes faster development
and easier maintenance of the database and its applications.
Improved performance
There have been a number of benchmarks that have suggested OODBMSs provide significant
performance improvements over relational DBMSs. The results showed an average 30-fold
performance improvement for the OODBMS over the RDBMS.
DISADVANTAGES OF OODBMSS:
There are following disadvantages of OODBMS:
Lack of universal data model: There is no universally agreed data model for an OODBMS, and
most models lack a theoretical foundation. This .disadvantage is seen as a significant drawback,
and is comparable to pre-relational systems.
Lack of experience: In comparison to RDBMSs the use of OODBMS is still relatively limited.
This means that we do not yet have the level of experience that we have with traditional systems.
OODBMSs are still very much geared towards the programmer, rather than the naïve end-user.
Also there is a resistance to the acceptance of the technology. While the OODBMS is limited to a
small niche market, this problem will continue to exist
Lack of standards: There is a general lack of standards of OODBMSs. We have already
mentioned that there is not universally agreed data model. Similarly, there is no standard object-
oriented query language.
Complexity: The increased functionality provided by the OODBMS (such as the illusion of a
single-level storage model, pointer sizzling, long-duration transactions, version management, and
schema evolution--makes the system more complex than that of traditional DBMSs. In
complexity leads to products that are more expensive and more difficult to use.
Lack of support for views: Currently, most OODBMSs do not provide a view mechanism,
which, as we have seen previously, provides many advantages such as data independence,
security, reduced complexity, and customization.
Lack of support for security: Currently, OODBMSs do not provide adequate security
mechanisms. The user cannot grant access rights on individual objects or classes.
If OODBMSs are to expand fully into the business field, these deficiencies must be rectified.