die test hebben er naartoe gelijd dat de laatste jaren toch RDBMS de meest gebruikte is. vooral als het om kritisch gegevens gaat..
Dat heeft niets met elkaar te maken. Het relationele model is handiger wanneer je dicht op de database zit te programmeren. Veel oude apps doen dat. Een object database is niet interessant wanneer je niet in een OO taal het ding kunt benaderen, wat pas de laatste paar jaar in gang is gezet.
bij een RDBMS gebruik je eigenlijk een soort 'remoting' om je gegevens te krijgen. onafhankelijk van je programmeer/ontwikkelomgevings is je informatie opgeslagen. bij ODBMS krijg je de neiging om de gegevens en ontwikkelomgeving nog dichter bij elkaar te brengen, wat negatief kan werken.
Wat een kolder. Lees eens een artikel van dr. Peter Chen over entities, stamt uit eind jaren 70. Zolang je concepten en uitvoering scheidt is er niets aan de hand. Hoeveel mensen bouwen stored procedures met daarin een deel BL ? Juist, heel veel. Wat zei je ookalweer over de handel dicht bij elkaar te brengen?
in SQL server 2005 wordt het heel mooi opgelost: je kjan een optionle laag definieren van classes die de tabellen beschrijven/object. zo kan je gebruik maken van object als je dat wil, maar onafhankelijk daarvan heb je je data altijd op de oude goede manier nog erin staan.
Nee zo werkt het helemaal niet en zo werken object databases ook niet. Bij relationele databases heb je data-less entity definities (al dan niet real time zoals in een select resultset), of beter: tuples. Die definities vormen de basis voor de data die gerelateerd is aan elkaar middels die definities. Bij een object database heb je die relaties niet per definitie, maar per instance. Wezenlijk verschil.
In Yukon is dat absoluut niet te definieren anders dan op de slappe manier van het verwijderen van de FK constraints en dan per instance relaties leggen middels waarden overkopieren, maar zo hou je geen integrity checks meer over.
als ik nu voor een DB kies, doe mij dan maar een RDBMS, die kan tenminste de komdende 5 jaar nog gebruiken, terwijl de toekomst van een ODBMS nog steeds ter discussie staat.. noem me anders wat voordelen van je ODBMS?
Ga maar eens een inheritance tree van classes die moeten worden weggeschreven in een database modelleren in een abstract relationeel model. Lukt niet! (nee dat lukt ECHT niet, kom niet aan met slappe truukjes om inheritance te mappen op table constructies want die zijn geen van alle integrity safe) En daarom werken Object databases beter in een oo omgeving dan relationele databases.
OODBMS zijn er nog niet klaar voor, en ik denk dat ze er nooit klaar voor zullen zijn.. het is waarschijnlijker dat een deel van de OO-snufjes naar een RDMS verhuizen, zoals bij yukon het geval is.. voor veel mensen is het belanrgijk om de data en de ontwikkelomgeving te scheiden..
Die laatste zin impliceert dat je juist geen C# achtige zaken in de database zou willen.
Verder is het verhuizen van 'wat' snufjes onzin. het is OF full support OF niet. Oracle 9i kan al jaren wat Yukon pretendeert te gaan doen. Db2 kan al jaren stored procs aan in weet ik hoeveel talen, waaronder Java. Zie je veel mensen dat gebruiken? Nee. Is het dan ineens wel belangrijk wanneer Yukon dat gaat doen? Nee in het geheel niet.