What are the advantages of using object-oriented databases?

Asked

Viewed 6,364 times

12

What are the advantages and disadvantages of using object-oriented databases in relation to relational databases?

What are the most commonly used object-oriented databases?

1 answer

7


Perks

  • They allow a modeling that is said to be closer to the real world, although this is not possible in fact, in theory reducing maintenance.
  • While it is possible in other types of Dbs, the ability to create new data types is better, which obviously allows you to create more advanced data structures with better abstractions, more flexible and theoretically more reliable, allowing hierarchy.
  • Works best with object-oriented languages, avoiding such a impedance Ismatch.
  • Navigation by data is done more naturally and expressively in most cases.
  • Some usage patterns may increase performance (does not use JOIN).
  • Best reuse.

There are usually some other characteristics that are more subjective or dependent on vendor, for example having versioning mechanism.

Disadvantages

  • There is a lack of standardization. Each supplier uses a different form, determining a different modeling. There are several currents that propose different ways of using this model.
  • It lacks mathematical foundation. Missing a better way to express complex queries in the way people are used to doing in the relational model.
  • The products, despite their long existence, are not yet mature, people do not adopt it because there is no general adoption and because of this there are not enough investments for improvements.
  • To faithfully adopt the model there is a loss of performance in various scenarios. To avoid this there is a break in the model. Various types of access need to be done indirectly through unnecessary intermediate objects in that query.
  • Automatic competition can be complicated or difficult. The manual requires more from the developer.
  • Abstraction can hide real problems in the adopted model, it can be difficult to get performance.
  • There is a lack of well-established mechanisms in the relational model for secure data access.
  • Lacking tools, documentation, experience, qualified professionals.

There are some items that even there is agreement whether it is advantage or disadvantage :)

  • 2

    Maybe add that Caché is the most used, and comment as a disadvantage the difficulty of expressing queries compared to relational banks? after all SQL is a language based on a mathematical concept (Relational Algebra) whose sole purpose is to express the search for data in a certain model, it is really difficult to beat this.

  • 3

    Yeah, I can talk about it, but which is more used I don’t know and I wouldn’t risk it. I would only talk if I had a reliable source for it. And I don’t know if it would be such useful information.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.