Bei der Migration von K-ISAM nach NK-ISAM können drei Stufen unterschieden werden: Konvertierung, Änderung von Kommando-Prozeduren, Source-Code-Änderung.
Konvertierung
K-ISAM-Dateien können auf das NK-ISAM-Dateiformat durch „logisches Kopieren“ umgesetzt werden. „Logisches Kopieren“ ist z.B. möglich mit dem Dienstprogramm PERCON (siehe Handbuch „PERCON“ [12]). In diesen Fällen müssen weder die Programme verändert werden, die diese Dateien verarbeiten, noch die Kommandofolgen der Jobs, in denen diese Dateien angesprochen werden.
Kommando-Prozeduren
Über Änderungen der Kommandofolge in Prozeduren können die Performance-Vorteile genutzt werden, die die NK-ISAM-Schnittstelle mit den ISAM-Pools bietet. An geeigneter Stelle können in performance-kritischen Jobs die Kommandos zur ISAM-Pool-Verwaltung eingefügt werden. In FILE/FCB ist jeweils der Operand POOLLNK bzw. im Kommando ADD-FILE-LINK der Operand POOL-LINK zu ergänzen, damit die Zuordnung Datei/ISAM-Pool durchgeführt und die Datei im Pool verarbeitet werden kann. Sollen NK-ISAM-Dateien mit SHARUPD=YES bzw. SHARED-UPDATE=*YES eröffnet werden, müssen sie in hostspezifischen Benutzer-ISAM-Pools verarbeitet werden. Zu diesem Zweck muss vorher mit CREATE-ISAM-POOL der Auftrag mit dem entsprechenden ISAM-Pool verbunden werden. Mit ADD-ISAM-POOL-LINK muss dem Pool ein Kettungsname zugeordnet werden, der bei POOL-LINK anzugeben ist. Nach Abschluss der Dateiverarbeitung müssen die Bezüge auf den ISAM-Pool wieder abgebaut werden (REMOVE-ISAM-POOL, DELETE-ISAM-POOL), sofern nicht mit Standard-Pools gearbeitet wird.
Source-Code-Änderung
Über Änderungen im Source-Code der verarbeitenden Programme (und damit evtl. der Dateistruktur) kann die ISAM-Verarbeitung bzgl. NK-ISAM optimiert werden:
Satzlänge an BLKSIZE anpassen, damit Überlaufblöcke vermieden werden
in Flag-Anwendungen den zu untersuchenden Bereich möglichst klein halten (mit GETFL ...,LIMIT=)
ISAM-Pool-Makroaufrufe sowie FILE-/FCB-Makroaufruf mit Operand POOLLNK für die ISAM-Verarbeitung im ISAM-Pools