The object-oriented data model (OODM) is the support on which the object-oriented database model rests (OODBM). And as a consequence we have the Object Oriented Database Management System (OODBMS). who is the one that manages all this.
The increasingly complex problems of the real world showed the need for a data model that better represented the real world.. With the object oriented data modelBoth the data and its relationships are contained in a single structure known as an object..
We will see briefly and very schematically, a series of basic concepts related to the object-oriented data model, so that we can understand the relevance and use of this type of systems.
Applications of object oriented data model
The object-oriented database management systems are developed largely in response to engineering needs. Its applications in this field include computer-aided design (CAD) Y integrated software development environments (HERE).
Relational database systems were developed largely in response to business needs.
Requirements in commercial databases
- Information can be largely described before the database is implemented.
- Infrequent schema update controlled by a database administrator (DBA)
- Fixed-length atomic data.
- Few entity types with many instances.
- Large initial data load with slow and steady growth thereafter.
- Unique value for each data item.
- On-site updates.
- Short transactions that can be used as a basis for concurrency control.
Advantages of an object-oriented data model compared to relational databases
- Object model intuitively closer to the real world.
- Extensibility – inheritance.
- complex values.
- Incorrect impedance removal.
- More expressive query language
- The tight coupling between data and applications enables the schema to better capture the meaning of the applications.
- Support for long transactions.
- Better support for applications like software engineering or computer-aided design (CAD)
- Arguably they work better, even though benchmarks have been applied primarily in areas such as engineering support, for which object-oriented database management systems are best suited.
Disadvantages of the object-oriented data model compared to relational databases
- The lack of a theoretical basis, so the exact meaning of object oriented data model is not well defined.
- With an object-oriented data model, it is more difficult to find experienced staff.
- lack of standards.
- The Competency of Relational and Object Relational Database Management Systems.
- Encapsulation is compromised to make the most of queries.
- An object-oriented database management system generally controls concurrency through locking.. Locking an inheritance hierarchy is difficult and can affect performance.
- An object-oriented data model is inherently more complex than a relational data model.; object-oriented database management system provides more complexity than relational data model management system. Complexity leads to higher implementation and maintenance costs.
- lack of views, but are views with an object model essential??
- Object-oriented database management systems generally provide coarse-grained access control.. A finer security mechanism is needed for most business applications.
Trends
- Some object-oriented database management systems have emerged and it seems likely that they will continue to be used..
- A standard covering an object data model has been proposed, a business object data definition, an object query language and an object manipulation language.
- Today, even though the object relational data model seems to be more used, It seems that some form of persistence, like java, will become the rule for object-oriented persistent data.