Metode for tilgang til virtuell lagring - Virtual Storage Access Method

Virtuell lageraksess Metode ( VSAM ) er en IBM DASD fillagring tilgangsmetode , først brukt i den OS / VS1 , OS / VS2 Release 1 (SVS), og Release 2 (MVS) operativsystemer, som senere anvendes i hele flere virtuelle Lagring (MVS ) arkitektur og nå i z / OS . Opprinnelig en post-orientert filsystem , omfatter VSAM fire datasett organisasjoner : nøkkel-sekvensert (KSDS), relativ plate (RRDS), entry-sekvensert (ESDS) og lineære (LDS). KSDS-, RRDS- og ESDS-organisasjonene inneholder poster, mens LDS-organisasjonen (lagt til senere i VSAM) ganske enkelt inneholder en sekvens av sider uten egen poststruktur, for bruk som en minnekartet fil .

Oversikt

En IBM Redbook kalt "VSAM PRIMER" (spesielt når den brukes med "Virtual Storage Access Method (VSAM) Options for Advanced Applications") forklarer begrepene som trengs for å gjøre bruk av VSAM. IBM bruker begrepet datasett i offisiell dokumentasjon som et synonym for filer og DASD ( Direct Access Storage Device ) fordi det støttet andre enheter som ligner på diskstasjoner .

VSAM-poster kan ha fast eller variabel lengde. De er organisert i blokker med fast størrelse kalt Control Intervals (CIs), og deretter i større divisjoner kalt Control Areas (CAs). Kontrollintervallstørrelser måles i byte - for eksempel 4 kilobyte  - mens størrelser på kontrollområdet måles i skivespor eller sylindere. Kontrollintervaller er enhetene for overføring mellom disk og datamaskin, så en leseforespørsel vil lese ett komplett kontrollintervall. Kontrollområder er tildelingsenhetene, så når et VSAM-datasett er definert, vil et integrert antall kontrollområder bli tildelt.

Access Method Services-verktøyet IDCAMS brukes ofte til å manipulere ("slette og definere") VSAM-datasett. Egendefinerte programmer kan få tilgang til VSAM-datasett gjennom Data Definition (DD) uttalelser i Job Control Language (JCL), via dynamisk tildeling eller i nettregioner som i Customer Information Control System (CICS).

Både IMS / DB og DB2 er implementert på toppen av VSAM og bruker dens underliggende datastrukturer .

VSAM filer

Den fysiske organisasjonen av VSAM-datasett skiller seg betydelig fra organisasjonene som brukes av andre tilgangsmetoder, som følger.

En VSAM-fil er definert som en klynge av VSAM-komponenter, f.eks. For KSDS en DATA-komponent og en INDEX-komponent.

Kontrollintervaller og kontrollområder

VSAM-komponenter består av fysiske blokker med fast lengde gruppert i faste intervall (CI) og kontrollområder (CA). Størrelsen på CI og CA bestemmes av Access Method Services (AMS), og måten de brukes på er normalt ikke synlig for brukeren. Det vil være et fast antall kontrollintervaller i hvert kontrollområde.

Et kontrollintervall inneholder normalt flere poster. Postene lagres innenfor kontrollintervallet fra den lave adressen og oppover. Kontrollinformasjon lagres i den andre enden av kontrollintervallet, fra den høye adressen og beveger seg nedover. Avstanden mellom postene og kontrollinformasjonen er ledig plass. Kontrollinformasjonen omfatter to typer inngang: et kontrollintervallbeskrivelsesfelt (CIDF) som alltid er tilstede, og postbeskrivelsesfelt (RDF) som er tilstede når det er poster innenfor kontrollintervallet og beskriver lengden på den tilknyttede posten. Ledig plass i et CI er alltid sammenhengende.

Når poster settes inn i et kontrollintervall, plasseres de i riktig rekkefølge i forhold til andre poster. Dette kan kreve at poster flyttes ut av veien innenfor kontrollintervallet. Omvendt, når en post slettes, flyttes senere poster ned slik at ledig plass forblir sammenhengende. Hvis det ikke er nok ledig plass i et kontrollintervall til at en post kan settes inn, blir kontrollintervallet delt. Omtrent halvparten av postene er lagret i det opprinnelige kontrollintervallet mens de gjenværende postene flyttes til et nytt kontrollintervall. Det nye kontrollintervallet er hentet fra et utvalg av gratis kontrollintervaller innenfor samme kontrollområde som det opprinnelige kontrollintervallet. Hvis det ikke er noe gjenværende ledig kontrollintervall innenfor dette kontrollområdet, blir selve kontrollområdet delt, og kontrollintervallene fordeles likt mellom det gamle og det nye kontrollområdet.

Du kan bruke tre typer posterorientert filorganisasjon med VSAM (innholdet i lineære datasett har ingen poststruktur):

Sekvensiell VSAM-organisasjon

En ESDS kan ha en indeks definert for å muliggjøre tilgang via nøkler, ved å definere en alternativ indeks. Postene i ESDS lagres i den rekkefølgen de skrives av adressetilgang. Postene lastes inn uavhengig av innholdet, og byte-adressene kan ikke endres.

Indeksert VSAM-organisasjon

En KSDS har to deler: indekskomponenten og datakomponenten. Disse kan lagres på separate diskvolumer.

Mens en grunnleggende KSDS bare har en nøkkel (den primære nøkkelen), kan alternative indekser defineres for å tillate bruk av flere felt som sekundære nøkler. En alternativ indeks (AIX) er i seg selv en KSDS.

Datastrukturen som brukes av en KSDS er i dag kjent som et B + -tre .

Relativ VSAM-organisasjon

En RRDS kan ha en indeks definert for å muliggjøre tilgang via nøkler, ved å definere en alternativ indeks.

Lineær VSAM-organisasjon

En LDS er et ustrukturert VSAM-datasett med en kontrollintervallstørrelse på et multiplum av 4K. Den brukes av visse systemtjenester.

VSAM datatilgangsteknikker

Det er fire typer tilgangsteknikker for VSAM-data:

  • Local Shared Resources (LSR), er optimalisert for "tilfeldig" eller direkte tilgang. LSR-tilgang er lett å oppnå fra CICS .
  • Global Shared Resources (GSR)
  • Ikke-delte ressurser (NSR), som er optimalisert for sekvensiell tilgang. NSR-tilgang har historisk vært enklere å bruke enn LSR for batch-programmer.
  • Distribuert filadministrasjon (DFM), en implementering av en distribuert datastyringsarkitektur-server, gjør det mulig for programmer på eksterne datamaskiner å opprette, administrere og få tilgang til VSAM-filer.

Deling av VSAM-data

Deling av VSAM-data mellom CICS-regioner kan gjøres ved VSAM Record-Level Sharing (RLS). Dette legger til platebuffer og, enda viktigere, platelåsing. Registrering og forpliktelse er fortsatt ansvaret for CICS, noe som betyr at deling av VSAM-data utenfor et CICS-miljø er sterkt begrenset.

Deling mellom CICS-regioner og batchjobber krever Transaksjonell VSAM , DFSMStvs. Dette er et valgfritt program som bygger på VSAM RLS ved å legge til loggføring og to-fase forpliktelse, ved hjelp av underliggende z / OS-systemtjenester. Dette tillater generalisert deling av VSAM-data.

Historie

VSAM ble introdusert som erstatning for eldre tilgangsmetoder og var ment å legge til funksjon, være enklere å bruke og å løse problemer med ytelse og avhengighet av enheten. VSAM ble introdusert på 1970-tallet da IBM kunngjorde operativsystemer for virtuell lagring (DOS / VS, OS / VS1 og OS / VS2) for sin nye System / 370-serie, som etterfølgere av DOS / 360 og OS / 360- operativsystemene som kjører på System / 360 datamaskinserie. Mens bakoverkompatibilitet ble opprettholdt, led de eldre tilgangsmetodene av ytelsesproblemer på grunn av adresseoversettelsen som kreves for virtuell lagring.

KSDS-organisasjonen ble designet for å erstatte ISAM , den indekserte sekvensielle tilgangsmetoden. Endringer i diskteknologi hadde ført til at søk etter data i ISAM datasett hadde blitt veldig ineffektiv. Det var også vanskelig å flytte ISAM-datasett da det var innebygde pekere til fysiske diskplasser som ble ugyldige hvis datasettet ble flyttet. IBM ga også et kompatibilitetsgrensesnitt for å la programmer kodet bruke ISAM til å bruke en KSDS i stedet.

RRDS-organisasjonen ble designet for å erstatte BDAM , Basic Direct Access Method. I noen tilfeller inneholdt BDAM-datasett innebygde pekere som forhindret dem i å bli flyttet. Imidlertid gjorde de fleste BDAM-datasett ikke det, og insentivet til å flytte fra BDAM til VSAM RRDS var mye mindre overbevisende enn det å flytte fra ISAM til VSAM KSDS.

Lineære datasett ble lagt til senere, etterfulgt av VSAM RLS og deretter Transactional VSAM.

Se også

Merknader

Referanser