[Talk-de] seek (perl) in osm dateien

Jacques Nietsch jacques.nietsch at gmx.de
Mi Jul 28 08:28:04 UTC 2010


Hallo Frederik,

Am 27.07.2010, 20:42 Uhr, schrieb Frederik Ramm <frederik at remote.org>:

> Hallo,
>
> Gary68 wrote:
>> bin schon am probieren. trivial ist was anderes... die buffer sizes
>> müssen sehr groß gewählt werden, was anscheinend zunächst zu problemen
>> führt...
>
> Du kannst es bei Bedarf so bauen, dass die Buffergroesse dynamisch  
> erhoeht wird, wenn nichts gefunden wird.

Jeder Algorithmus der mit Blöcken arbeitet ist fehlerbehaftet, da mit
gewisser Wahrscheinlichkeit eine Blockgrenze mitten in einen Tag fällt.

Mein Vorschlag wäre zweistufig zu arbeiten.

1: Eine Indexdatei erstellen, die die Positionen der Zeilenanfänge enthält.
Das kann man mit Perl oder f(lex) machen und sollte sehr schnell gehen.
2: Binärsuche über die Indexdatei und dann mittels seek-read aus der  
Datendatei lesen

>
> Bye
> Frederik
>

Gruss
Jacques





Mehr Informationen über die Mailingliste Talk-de