dedlfix: suchen DB bei 1.57 GB freiem Speicher

Beitrag lesen

Tach!

wenn ich die daten die ich haben will einfach in einer txt speichere komme ich vermutlich auf weniger als 200 MB, hierzu möchte ich allerdings noch die suchfunktion einer DB haben...

IDs als 32-Bit-Integer abgelegt benötigen 4 Byte, wenn kein Oberhead dazukommt. Das ergibt bei 1,57GB Platz für circa 400 Millionen IDs.

gibt es bestimmte tricks so eine suchfunktion selber zu bauen?

Natürlich. Allerdings ist das kein Trick sondern altbekanntes Wissen, das ständig verwendet wird. Ein Verfahren nennt sich binäre Suche. Voraussetzung ist, dass die IDs sortiert sind. Dann greift man in die Hälfte, schaut ob sie stimmt. Ist sie kleiner oder größer, nimmt man sich die obere oder untere Hälfte und beginnt von vorn, bis man trifft oder nicht mehr weiter teilen kann. Code dafür solltest du reichlich finden.

die ids sind integer, allerdings sehr große und ich weiß nicht ob eventuell irgendwann eine sehr kleine id hinzukommt,

Solange sie als Zahl die magische Grenze von 4.294.967.295 nicht übersteigen, ist alles in Ordnung. Ansonsten kannst du nur die Hälfte ablegen, wenn du 64-Bit-Integers nimmst.

dedlfix.