 |  | | Autor: |  | M. Peter (---.gramadosite.com.br) |  | | Datum: |  | 13.11.09 |  | Auch hier muss ordentlich korrigiert werden.
| Im allgemeinen (an die Autorin gerichtet): Die Frage OO vs
| relational stellt sich nicht, da beide Denkweisen nicht
| vergleichbar sind, bzw. sie werden in objektrelationaler Form
| zusammengebracht - quasi als eine Erweiterung.
|
Also es ging eigentlich um objektorientierte Datenbanken und nicht um objektrelationale Datenbanken. Das ist nicht das Selbe.
Objektrelationale Datenbanksysteme werden häufig so realisiert, dass der Unterbau relational ist, aber objektorientiert auf die Daten zugegriffen werden kann. (In aller Regel kann man mit diesen auch weiterhin rein relational arbeiten.) Somit ist in diesen Fällen die Objektorientierung als Erweiterung zu verstehen, die vom Datenbankmanagementsystem verwaltet wird. Objektorientierte Datenbanksysteme sind jedoch etwas anderes.
| Tatsache ist, dass Abfragen in ORDB wesentlich komplexer sind
| und Paradigmenwechsel notwendig macht -
Das kann man so pauschal nicht sagen und hängt auch noch extrem von der Realisierung des Datenbankherstellers ab. Die Form der Abfragen kann in einigen Fällen deutlich einfacher sein. Das gilt aber eben nicht immer. Wenn ich aber brav auf meinen Objekten arbeite, wenig Vererbung benutze und tendenziell eher an meinen kompletten Datenobjekten interessiert bin, dann kann die Abfrage nicht nur weniger komplex sein, sondern möglicherweise auch die Antwortzeit fast gleich schnell. Geringer kann im Falle eines objektrelationalen Datenbanksystems die Abfragezeit mit objektorientierten Mitteln nicht sein, wenn der Unterbau ohnehin relational ist, da man genauso wie das System auf die Daten zugreifen kann. Da man aber selbst die Anfragen nicht noch konvertieren (OO->relational) muss, sollte man bei objektrelationalen Datenbanksystemen mit relationalen Abfragen immer einen Tick schneller sein können, zumindest wenn man ordentliche Anfragen schreiben kann.
| Tatsache ist, dass Abfragen in ORDB wesentlich komplexer sind
| und Paradigmenwechsel notwendig macht -
ein Grund für die
| zögerliche Verbreitung in der Entwicklerwelt.
Ein Grund für die mangelnde Verbreitung objektorientierter Datenbanksysteme ist vor allem die oft wesentlich geringe Performance, gerade wenn es um große Datenbestände geht. Das müssen nicht unbedingt Umfänge wie bei Banken sein. Wo man sicherlich keinen Unterschied wahrnehmen wird, sind kleine Anwendungen oder solche wo die Antwortzeit noch von ganz anderen Dingen abhängt, der Datenbestand gering ist etc.
(Klein kann aber schon mal 500.000 Datensätze bedeuten und nicht vielleicht die Verwaltung seiner eigenen 100-200 Bücher. Aber wie schon oben erwähnt wurde, dass hängt immer von der Realisierung ab. Wenn man es falsch macht können beide Varianten langsam sein) |

|