hi,
Wirklich gewonnen hast Du nur etwas, wenn zum Holen, Einfügen, Ändern oder Löschen der Daten nicht jedesmal die gesamte Datei gelesen werden kann.
Das schießen wir mal nicht alles über einen Haufen ;-)
Aufm Webserver, wo es schnell gehen muss, haste schon viel gewonnen, wenn nur das Lesen der Daten optimiert ist.
Bei einer sequentiellen Datei kann man keine Daten holen, sondern nur suchen.
Unabhängig davon, wie die Datei erzeugt wurde, ein wahlfreier Zugriff muss ja auch erstmal wissen, wohin er greift. Dafür gibt es einen Index und der muss in jedem Fall gelesen werden. Der Index ist freilich viel kürzer als die ganze Datei und kann entweder in der gleichen Datei oder ein einer weiteren Datei hinterlegt sein. Die Adressierung mache ich linear.
Du wirst auch bei einem Random-Access-Feature nicht umhin kommen, die Daten sequentiell zu lesen, sprich: Zeiger an Position x, lese y Bytes.
Der Kompromiss liegt wie immer zwischen CPU und RAM ;)
Hotti