Re: [Allegro] Index: Speichergrenzen überschritten?

Thomas Fischer fischer at sub.uni-goettingen.de
So Sep 30 10:48:26 CEST 2012


Hallo Herr Oberfell,

die internen Beschränkungen von Allegro werden in dem Artikel "allegro - Grenzen, Schranken, Barrieren" (http://www.allegro-c.de/grenzen.htm) beschrieben, vielleicht können Sie da schon etwas finden, was die Indexierung verhindert.
Zu den Indexeinträgen steht dort:

"Für den aktuellen Satz wird Platz gebraucht, um die Registereinträge zwischenzuspeichern. Maximal kann ein Datensatz in PRESTO und UPDATE 500 Schlüssel haben, die gesamte Länge der Schlüssel darf bis zu 10000 Byte betragen.

Für Windows gelten die Werte: 1000 Schlüssel, 32000 Byte je Satz.

Diese Werte sind ansonsten nicht einstellbar.  

Das Programm INDEX allerdings kann beliebig viele beliebig umfangreiche Einträge je Satz erzeugen: siehe Vb154a, 25.4.2002"

Demnach könnten Sie mit den neuen Parametern vielleicht an die Grenze von "1000 Schlüssel, 32000 Byte je Satz" stoßen; vielleicht lohnt der Versuch, die Indexierung einmal von index.exe vornehmen zu lassen.

Mit freundlichen Grüßen
Thomas Fischer


Am 29.09.2012 um 07:18 schrieb Jörg Oberfell:

> Lieber Herr Eversberg, liebe Liste,
> 
> bei einer meiner Datenbanken besteht das Problem, das beim Indexieren nicht alle Einträge in den Index mit aufgenommen werden. Hintergrund ist eine Änderung am Index, die (absichtlich) zu rund 80% mehr Indexeinträgen führen sollte. Tatsächlich ist aber deren Anzahl massiv gesunken. So sind scheinbar nur die ersten 2145 Datensätze vollständig indexiert, bei den folgenden Sätzen ist nur die Angabe in Register 10 indexiert (s. Beispiel unten). In der "Voransicht" mit F7 in a99 werden die Indexeinträge dagegen korrekt erzeugt (-> Bsp.).
> 
> Evtl. ist der Speicherplatz an irgendeiner Stelle begrenzt, denn eine (testweise!) Herausnahme einiger "Zeilen" der Indexparameter abwechselnd an den unterschiedlichsten Stellen führte zum Erfolg in dem Sinne, dass dann alle Indexeinträge vorhanden sind -- natürlich ohne die zusätzlich gewünschten Einträge.
> 
> Einige Daten:
> - Anzahl Datensätze:   4667
> - DB-Datei (.Clg):    2 MB
> - Index-Datei (.Cdx):
>   - 3,1 MB  (im Fehlerfall, bei kompletten Indexparametern), eigentlich müsste sie größer 6,5 MB sein
>   - 6,5 MB  (mit gekürzten Indexparametern)
> - Index-Parameter (.Cpi):   44 KB
> - Indexeinträge
>   - im Fehlerfall (nur die ersten 2145 Datensätze sind indexiert):
>      - ca. 405.000 Indexeinträge, davon 60.000 verschiedene
>   - bei gekürzten IndexParam:
>      - ca. 900.000 Schlüssel, max. 479 pro Satz
>      - ca. 890.000 Indexeinträge, davon 110.000 verschiedene
> 
> 
> Bsp.: Ein Datensatz, der 162 Indexeinträge erzeugen soll, sieht in a99 bei Druck auf "F7" wie u. g. aus, im Index findet sich aber nur ein einziger Eintrag, derjenige aus Register 10: "|:00003646"
> 
>   |/2012081500000000x
>   |00000|auch morgen         |
>   |1kbonn
>   |1kbundesgeschaeftsstelle
>   ...
>   |9verlagsdruckerei
>   |9wahlen
>   |9wappen
>   |:00003646
> 
> Woran könnte ich drehen?
> Sind rund 500 Indexeinträge pro Datensatz zu viel?
> Gibt es ganz andere Ursachen?
> 
> Vielen Dank,
> Jörg Oberfell
> 
> -- 
> **********************************************************************
>   Jörg Oberfell
>   Württembergische Landesbibliothek
>   - IT-Abteilung -
>   - Fachreferat Mathematik und Informatik -
>   Konrad-Adenauer-Str. 8   D-70173 Stuttgart
>   Postfach 105441          D-70047 Stuttgart
>   Tel.: +49 (0)711 / 212 - 44 75
>   Fax:  +49 (0)711 / 212 - 44 22
> **********************************************************************
> 
> _______________________________________________
> Allegro mailing list
> Allegro at biblio.tu-bs.de
> http://sun250.biblio.etc.tu-bs.de/mailman/listinfo/allegro




Mehr Informationen über die Mailingliste Allegro