Eine Ebene höher
Frage
Wann sollte ich Daten in einer externen Datenbank speichern und nicht in der ZODB?
Antwort
In den meisten Fällen ist es einfacher und schneller, Daten in der ZODB zu speichern. Trotzdem gibt es Gründe, Daten in einer externen Datenbank zu speichern. Dabei kann es sich um ein RDBMS oder eine LDAP-Datenbank handeln.
- Verschiedene Programme, die in verschiedenen Sprachen geschrieben sind, müssen auf die Daten zugreifen können.
- Es sind schon Programme vorhanden, die nicht oder nur mit beträchtlichem Aufwand umgestellt werden müssten.
- Es handelt sich um sehr viele Daten, über die andauernd Suchabfragen gemacht werrden müssen.
- Man benötigt sehr spezielle SQL-Features wie JOINs, GROUP etc..
- Die Daten werden sehr häufig geändert. Da ZODB jede Version speichert bis die DB gepackt wird, kann sich die DB so sehr schnell aufblähen.
Wenn keiner der Punkte zutrifft, sollte man prüfen, ob es nicht vielleicht doch einfacher ist, die Daten direkt in der ZODB zu speichern.