Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

ISAM-Datenblock

Die Datensätze einer ISAM-Datei werden nach ihrem ISAM-Schlüssel (Primärschlüssel) sortiert in Datenblöcken abgelegt. Diese Datenblöcke können sich aus 1-16 benachbarten PAM-Seiten zusammensetzen; aus mehr als einer PAM-Seite bestehende Datenblöcke werden auch als Multiblöcke bezeichnet.

Die Länge eines Datenblocks wird in den Makros FILE/FCB mit dem Operanden BLKSIZE, im Kommado ADD-FILE-LINK mit dem Operanden BUFFER-LENGTH festgelegt.
Da ISAM-Dateien Plattendateien sind, kann nur ein Blockungsfaktor „n“ für Standardblöcke (1 <= n <= 16) angegeben werden, keine absolute Länge. Bei der Wahl der Blocklänge muss die Verträglichkeit mit der Satzlänge berücksichtigt werden, damit der Speicherplatz optimal genutzt werden kann und keine Überlaufblöcke entstehen. Der Abschnitt „Überlaufblock (NK-ISAM)" enthält Tabellen, die diesen Zusammenhang darstellen.

Blocksplitting – Teilen von Datenblöcken

Wenn bei nichtsequenzieller Dateierweiterung (STORE, INSRT) ein Satz in einen Block nicht mehr eingefügt werden kann, kommt es zum Blocksplitting: der alte Datenblock wird geteilt, die entstandenen Hälften werden in neue (leere) Blöcke übertragen. Der alte Datenblock bleibt der Datei zugeordnet und wird als freier Datenblock gekennzeichnet.

Beispiel: Blocksplitting

Dateistruktur

Bild 30: Beispiel einer ISAM-Dateistruktur vor Einfügen eines Satzes

Der Benutzer gibt an, dass ein Satz mit dem Schlüssel 05 eingefügt werden soll. Da kein Platz mehr im Block 2 vorhanden ist, wird Block 2 geteilt.

Die Datei hat nun folgende Struktur:

Bild 31: Beispiel einer ISAM-Dateistruktur nach Einfügen eines Satzes