Hallo,
ich bin zurzeit dabei meine eigene Datenbank auf die Reihe zu stellen. Seit geraumer Zeit bin ich am planen.
Jetzt bin ich bei dem Thema Datenmanipulation angelangt.
Um es kurz vorweg zu nehmen, ich habe ein Objekt im Speicher liegen, welches meine Daten nicht-persistent speichert. Dem Objekt können Daten entnommen werden, es kann verändert werden und es können Daten hinzugefügt werden.
Um Persistenz dennoch zu wahren, speichere ich die Daten in ein spezielles Format in ein File ab.
Meine Frage diesbezüglich lautet, wie es Datenbanken am besten handlen, wenn zB. ein neuer Datensatz hinzugefügt wird.
Wird der Datensatz an das Objekt angehängt, und wenn Zeit für die DB besteht, in die Datei geschrieben? Oder wird gleich das komplette Objekt wieder als File nieder geschrieben, egal wie die Datenbank in Benutzung ist?
Eine Möglichkeit die sich mir bietet, wäre das Anhängen an das Objekt, mitweilen eines kurzen Vermerkes in einer Log-Datei. Ein Zwischending also.
Die Daten aus dem Objekt können ruhig verloren gehen (falls ein Systemcrash das Objekt zerstört), da alles geloggt wurde. Ab dem letzten Stand, der geloggt wurde, aber noch nicht in die Datei geschrieben wurde, wird ein Wiederaufrollen ins Leben gerufen, welches die Dateien fest in das File implementiert.
Dann wird das File wieder eingelesen und in mein Objekt in den Speicher geholt.
Ist der prinzipielle Ablauf so zumutbar?
Mfg Tom