ISAM
Der Abkürzung ISAM (Index Sequential Access Method), im Deutschen auch "indexsequentielle Zugriffsmethode" genannt, ist eine Methode zum Zugriff auf die Datensätze einer Datei, die in den 1960-er Jahren von IBM entwickelt wurde. Dabei werden sowohl sequentielle (sortierte), als auch Random-Zugriffe (wahlfreie Zugriffe) ermöglicht.
Jede Datei kann mehrere Indizes haben. Ein Index stellt eine Reihenfolge der Datensätze dar, nach denen gesucht werden kann. Eine Adressliste beispielsweise kann alphabetisch nach dem Nachnamen sortiert werden, oder aufsteigend nach der Postleitzahl. In diesen Fällen muss ein entsprechender Index existieren.
ISAM findet auch in Datenbanksystemen Anwendung. Hierbei liegt das Augenmerk auf der Optimierung der Zugriffsgeschwindigkeit bei den Datenabfragen. ISAM ist in Ansätzen Teil des Standards der COBOL-Sprache.
IBM hat in den frühen Anfängen eine nicht standardisierte Weiterentwicklung namens VSAM (Virtual Storage Access Method) geschaffen.
ISAM - Aufbau und Funktion
Es gibt zwei Methoden mittels Index Sequential Access Method (ISAM) für das Dateimanagement bzw. zum Datenzugriff.
Index Sequential Access Method - Methode 1
Die Datensätze sind blockweise in Seiten zusammengefasst. Die Datenblöcke sind jeweils aufsteigend sortiert, der Index liegt auf dem niedrigsten Wert. Zumeist ist der Index mehrstufig. Er beginnt seine Suche somit immer beim niedrigsten Wert pro Block.
Beim Suchen eines Wertes wird die Indexdatei der Reihenfolge nach durchsucht. Handelt es sich um einen mehrstufigen Index, wird dadurch bekannt, auf welcher Indexseite der Wert zu finden ist. Dann erfolgt die Suche genau auf dieser Seite der Reihenfolge nach, solange bis der Wert gefunden wird.
Beim Einfügen neuer Werte wird zunächst gesucht, an welche Stelle in der Indexdatei der Wert passt. Wenn der Wert zwischen die Einträge passt, wird er dort eingefügt. Ist er größer oder kleiner als die bestehenden Werte, wird er hinten, bzw. vorne angefügt.
Beim Löschen von Werten werden diese zunächst gesucht und dann zum Löschen gekennzeichnet. Falls der gelöschte Wert der erste Wert auf der Indexseite war, wird die Indexseite neu strukturiert.
Index Sequential Access Method - Methode 2
Die Methode 1 wurde nicht sehr lange angewandt. Als Nachfolger trat die Methode 2 auf den Plan. Hierbei wurde eine Baumstruktur verwendet. Dadurch konnten Werte als "Eltern-Werte" oder "Kinder-Werte" erkannt werden. Durch diese Art des Index war es möglich die Werte untereinander in Beziehung zu setzen.
Wird die ISAM-Methode heute noch benutzt?
Obwohl die ISAM-Methode veraltet erscheint, wird sie heute noch verwendet. Sie kommt immer dann zum Einsatz, wenn sich die Verwendung einer relationalen Datenbank nicht lohnt.
Es wird vermutet, dass die heute gespeicherten Datenmengen in ISAM-Files größer sind als die Mengen in relationalen Datenbanken. Dies resultiert sowohl aus den Daten der COBOL-Umgebungen, wie auch aus den Daten der Informix-Datenbanken. Letztere wurden durch die Realisierung von C-ISAM unter Unix bei den Übergängen der Großrechner auf Unix-Systeme neu implementiert.
Auf ISAM aufbauend wurde MyISAM entwickelt. Dieses ist im Datenbankmanagement-System MySQL implementiert. MySQL findet unter anderem in klassischen LAMP-Umgebungen Anwendung. Auch ESE (Extensible Storage Engine) von Microsoft, mitunter als Jet Blue bezeichnet, basiert auf ISAM. ESE fungiert als Datenbank für die Active Directory und den Microsoft Exchange Server.
ISAM - Definition & Erklärung - Zusammenfassung
Im Zusammenhang mit dem Lexikoneintrag ISAM sollte man sich folgende Punkte merken:
- Der Begriff ISAM (Index Sequential Access Method) ist eine Methode zum Zugriff auf die Datensätze einer Datei, die in den 1960-er Jahren von IBM entwickelt wurde.
- ISAM findet auch in Datenbanksystemen Anwendung.
- Es gibt zwei Methoden mittels Index Sequential Access Method (ISAM) für das Dateimanagement bzw. zum Datenzugriff.