VSAM (Virtual Storage Access Method) – specjalny, dodatkowy system dostępu i przetwarzania zbiorów danych, zlokalizowanych na nośnikach o dostępie bezpośrednim, wprowadzonych w maszynach cyfrowych IBM/370 i następnych, wyposażonych w pamięć wirtualną w systemie operacyjnym OS.

Budowa systemu System VSAM tworzą: VSAM: metoda dostępu IDCAMS: program usługowy zarządzający środowiskiem VS: specjalne środki systemu OS. Powyższe elementy tworzyły specjalizowane środowisko programowe, przeznaczone do rozszerzonego przetwarzania danych.

Organizacja zbiorów danych System VSAM udostępniał dodatkowe (w stosunku do systemu OS) organizacje zbiorów danych: pozycyjną (entry sequenced data set, ESDS) kluczową (key sequenced data set, KSDS) komórkową (relative record data set, RRDS). Operator – programista – posługujący się określonym źródłem danych programował przetwarzanie określonych kolekcji, na które były przechowywane w plikach: danych indeksów indeksów pobocznych innych.

Organizacja pozycyjna Ten rodzaj wywodzi się z organizacji szeregowej. Rozszerzenie organizacji szeregowej polegało w tym przypadku na wprowadzeniu: indeksów jednoznacznych (unique index) indeksów niejednoznacznych (non unique index). Cechy kolekcji pozycyjnej: ładowanie sekwencyjne „do przodu” dowolna liczba indeksów pobocznych jednoznacznych i niejednoznacznych przetwarzanie: sekwencyjne sekwencyjno-wyrywkowe wyrywkowe przetwarzanie: „w przód” „wstecz” niezmienna pozycja rekordu w kolekcji brak możliwości usunięcia rekordu lub zmiany rozmiaru.

Organizacja kluczowa Ten rodzaj wywodził się z organizacji indeksowej. Ładowanie rekordów odbywało się po uporządkowaniu kolekcji według wartości kluczy, przy czym dostępne były również indeksy jednoznaczne i niejednoznaczne. Cechy kolekcji kluczowej: ładowanie sekwencyjne według kluczy po załadowaniu kolekcji dowolna liczba indeksów pobocznych jednoznaczne i niejednoznaczne przetwarzanie: sekwencyjne sekwencyjno-wyrywkowe wyrywkowe przetwarzanie: „w przód” „wstecz”

Organizacja komórkowa Wywodziła się ona z organizacji regionalnej-1 i była do niej bardzo zbliżona. Brak możliwości tworzenia indeksów pobocznych ograniczał mocno stosowanie tej organizacji kolekcji. Cechy kolekcji komórkowej: ładowanie sekwencyjne sekwencyjno-wyrywkowe wyrywkowe przetwarzanie: sekwencyjne sekwencyjno-wyrywkowe wyrywkowe przetwarzanie: „w przód” „wstecz” konieczność posługiwania się rekordami o stałej długości i identyfikowania rekordów numerami.

VSAM a języki programowania Program IDCAMS służył do tworzenia nowej kolekcji, czego nie można było wykonać w językach programowania. Po utworzeniu kolekcji można było ją przetwarzać, za pomocą języków programowania, takich jak PL/1 czy Cobol.

Ponieważ każda kolekcja musiała być skatalogowana, redukowało to złożoność zdań języka JCL – języka komunikacji pomiędzy operatorem a systemem OS.

Sterowanie systemem Sterowanie systemem opierało się na dyrektywach zapisywanych w układzie swobodnym, które wraz ze swoimi parametrami tworzyły dość rozbudowany język. Dyrektywy dzieliły się na: pozycyjne kluczowe. Komentarze były zapisywane identycznie jak w PL/1, tzn. pomiędzy znakami „/*” a „*/”. Lista dyrektyw: ALTER : zmiana atrybutów zbiorów, kolekcji, obiektów BLDINDEX : tworzenie indeksu pobocznego CHKLIST : informacje plików kontrolnych DEFINE ALTERNATEINDEX : definiowanie indeksu pobocznego DEFINE CLUSTER : definiowanie kolekcji DEFINE MASTERCATALOG | USERCATALOG : definiowanie katalogu głównego lub użytkownika DEFINE NONVSAM : definiowanie zbioru niebędącego kolekcją DEFINE PATH : definiowanie łączników DEFINE SPACE : definiowanie przestrzeni danych DELETE : usuwanie zbiorów, kolekcji, indeksów, przestrzeni, katalogów EXPORT : eksportowanie katalogów, obiektów EXPORTRA : eksportowanie informacji z obszaru odzyskiwania utraconych danych IMPORT : importowanie katalogów, obiektów IMPORTRA : importowanie z obszaru utraconych danych LISTCAT : wyprowadzenie raportów LISTCRA : sporządzenie raportu PRINT : ujawnienie zawartości zbioru lub kolekcji REPRO : kopiowanie i łączenie: zbiorów, kolekcji, katalogów RESETCAT : porównanie zgodności informacji katalogu i obszaru odzyskiwania utraconych danych VERIFY : aktualizowanie informacji katalogowych Każda dyrektywa generowała kod powrotu: 0 – wykonanie pomyślne 4 – wykonanie z pewnymi trudnościami 8 – wykonanie niekompletne 12 – odrzucenie dyrektywy 16 – błąd nienaprawialny.

Bibliografia Jan Bielecki, System VSAM. Zasady stosowania w języku PL/I, Wydawnictwa Naukowo-Techniczne, Warszawa 1987, Seria: Biblioteka Inżynierii Oprogramowania,

Kategoria:Systemy plików Kategoria:Biblioteki programistyczne Kategoria:Systemy baz danych