Metode til adgang til virtuel opbevaring
Virtual Storage Access Method ( VSAM , "metode til at få adgang til virtuel hukommelse ") er en metode til at få adgang til filer, der bruges på IBM mainframe-systemer. Navngivningen er baseret på ideen om at kunne adressere filindhold som celler i (virtuel) hovedhukommelse, som understøttes ved hjælp af en RBA ( Relative Byte Address ). Dette gjorde det muligt for første gang at ikke længere behøver at tage hensyn til de fysiske egenskaber af de lagringsmedier ( pladecylinderen, for eksempel). VSAM bruges i vid udstrækning i z / OS- og z / VSE- operativsystemerne .
Teknisk set består en VSAM-fil af poster i et katalog, en VVDS (VSAM Volume Data Set) med metadata og mindst en fysisk fil på en eller flere diske. VSAM-filer omtales derfor også som klynger (datahopper). Der er forskellige former for VSAM-klynger:
- KSDS
- ( Sekventielt nøgledatasæt ) Med denne filtype får VSAM adgang til dataene via et indeks, der er gemt i et separat datasæt på operativsystemniveau . Sekventiel adgang understøttes også.
- ESDS
- ( Indgang sekventielt datasæt ) Med denne filtype får VSAM adgang til filens data sekventielt. Dataposterne læses efter hinanden i nøjagtig den rækkefølge, som de er i filen. Ved hjælp af alternative indekser kan direkte adgang muliggøres ved hjælp af indekser (nøglefelter).
- RRDS
- ( Relativ postdatasæt ) VSAM får adgang til dataene ved hjælp af logiske postnumre.
- LDS
- ( Lineært datasæt ) VSAM styrer dataene som en ustruktureret byte-stream, der kan fortolkes af applikationssoftwaren efter behov.
VSAM-filer oprettes og administreres under z / OS ved hjælp af hjælpeværktøjet IDCAMS . De kan behandles med alle de programmeringssprog, der ofte bruges der.
Databasesystemer som IMS (under z / VSE: DL / I) eller DB2 bruger VSAM-klynger til at gemme deres data. Katalogerne til z / OS-katalogsystemet (ICF, Integrated Catalog System) er VSAM-filer. Andre centrale systemkomponenter bruger også VSAM-filer (normalt LDS) som datalagring. Eksempler:
- hardwarekonfigurationen (HCD)
- systemloggeren
- zSeries-filsystemet zFS
Eksempel: Brug af en VSAM-KSDS
Da nøglen ( nøgle ) normalt består af flere oplysninger såsom "dato for indtastning, vare, antal" er, og VSAM-klyngen sorteres efter nøglen, er der en kraftig og nem adgang til alle poster, der begynder med en delvis nøgle .
For eksempel, hvis alle optegnelser ( optegnelser ) vælges, var en udstationeringsdato i januar 2003. VSAM tilbyder GENKEY- indstillingen til dette , som står for Generic Key . Når du læser for første gang, får READ- kommandoen en nøgle, der kun består af 6 bytes ("ÅÅÅÅMM"). Derfra kan du fortsætte med at læse sekventielt, indtil de første 6 byte i nøglen ikke længere stemmer overens. I pseudokode kunne det se sådan ud:
- Indstil END til 'N'
- Åbn filen i et VSAM-miljø med en generisk nøgle.
- Læs den første post, hvis nøgle begynder med "200301".
- Så længe END ikke er lig med 'J':
- Skriv posten til printeren
- Læs den næste post
- Når slutningen af filen er nået, eller begyndelsen af nøglen til dataposten, der lige er læst, stemmer ikke længere overens:
- Indstil END til 'J'
- Luk filen
litteratur
- IBM Redbook VSAM Demystified