Hi Leute,
ich habe für ein kleines Projekt eine In-Memory Datenbank in C# geschrieben, mit CRUD Funktionalität und Speicherung in Dateien.
Ob man die 90 - 100 Zeilen Code "Datenbank" nennen kann sei mal nun dahin gestellt, was mich nun interessiert, nach dem Aufbau eines In-Memory Systems, wie schaffe ich es nun NICHT die gesamte DB / Tabelle in den Speicher zu laden, und dennoch die verschiedenen Operationen durchführen zu können?
Es ist kein akutes Problem, sondern eine Interessenfrage.
Derzeit lassen sich die Tabellen dieser "Datenbank" einzeln in den Speicher Laden und wieder rausnehmen.
Wäre es theoretisch möglich über nen FileStream / StreamWriter/ StreamReader wirklich nur die Elemente zu suchen und zu modifizieren, die benötigt werden?
Wie würdet ihr an sowas herangehen?
Wenn ich z.B. an Smartphones denke, wo sich sowas super einfügen lassen würde (ja ich hab das Privileg mit Xamarin in Visual Studio arbeiten zu dürfen ), kann ich nicht von mindestens 2 GB Arbeitsspeicher ausgehen. Hier sind teilweise nur 50MB zur freien verfügung.
Warum nicht SQLite? Weil SQL nervt
ich habe für ein kleines Projekt eine In-Memory Datenbank in C# geschrieben, mit CRUD Funktionalität und Speicherung in Dateien.
Ob man die 90 - 100 Zeilen Code "Datenbank" nennen kann sei mal nun dahin gestellt, was mich nun interessiert, nach dem Aufbau eines In-Memory Systems, wie schaffe ich es nun NICHT die gesamte DB / Tabelle in den Speicher zu laden, und dennoch die verschiedenen Operationen durchführen zu können?
Es ist kein akutes Problem, sondern eine Interessenfrage.
Derzeit lassen sich die Tabellen dieser "Datenbank" einzeln in den Speicher Laden und wieder rausnehmen.
Wäre es theoretisch möglich über nen FileStream / StreamWriter/ StreamReader wirklich nur die Elemente zu suchen und zu modifizieren, die benötigt werden?
Wie würdet ihr an sowas herangehen?
Wenn ich z.B. an Smartphones denke, wo sich sowas super einfügen lassen würde (ja ich hab das Privileg mit Xamarin in Visual Studio arbeiten zu dürfen ), kann ich nicht von mindestens 2 GB Arbeitsspeicher ausgehen. Hier sind teilweise nur 50MB zur freien verfügung.
Warum nicht SQLite? Weil SQL nervt