Reputation: 15746
Object-databases are used very seldomly, albeit they offer a way to live without SQL, which is, I think, a benefit of its own.
Yet, I have seen them about never in production systems. Is there something fundamentally wrong with object-databases? Can I use a object-database in a production system?
Edit: So, maybe I should confess that I love object-databases. I cannot really get my head around why they are not used a lot more often.
Upvotes: 4
Views: 639
Reputation: 8963
The real question here is whether you require tooling to support your database or not. By tooling I mean reporting, data migration, data mining, etc. Do you need to provide self service reports? Heck, even reports with a fast turnaround time that doesn't require deploying new code? (Providing report functionality in the application is a real drag.)
There are countless tools available to perform these operations against traditional RDBMs. Against OODBs? I'm not familiar with any major products. Though, admittedly, I'm not an OODB kinda guy.
If you don't need those tools, they go for it. Otherwise, stick to traditional RDBMs. With current ORM technology, the pain of mapping objects to records is much less than it used to be.
Upvotes: 2
Reputation: 18821
Sure you could, as long as it was stable. The problem is the relative lack of high quality Object Oriented DB systems, as well as the fact that most people don't even know what one is.
Upvotes: 3
Reputation: 13229
There are production systems written using the GemStone OODB. It's a distributed, persistent Smalltalk system.
Upvotes: 3
Reputation: 556
Heard of Cache? Used by EpicSystems for their Enterprise Health Record(EHR) product. Plenty of production shops using it.
Upvotes: 2
Reputation: 99720
db4o is being used a lot by many Fortune 500 companies (especially for embedded applications), so I wouldn't say that OODBs are not used for real-world production systems
Upvotes: 3
Reputation: 66112
The problem I believe, is that SQL isn't inherently a bad thing. It is very good at performing set based operations. From what I've seen, object databases work well when working with individual objects, yet fail when trying to do set based operations. Also, people are very good at working with SQL databases. It's easy to find people to work with them. Object databases are another story.
Upvotes: 1