Virtual Storage Access Method
Virtual Storage Access Method (VSAM) es un esquema de almacenamiento de IBM del sistema operativo OS/VS2, utilizado también en la arquitectura MVS y ahora en z/OS. Es un sistema de ficheros orientado a registros que pueden estar organizados de cuatro maneras diferentes: Key Sequenced Data Set (KSDS), Relative Record Data Set (RRDS), Entry Sequenced Data Set (ESDS) y Linear Data Set (LDS). Mientras los tipos KSDS, RRDS y ESDS contienen registros, el tipo LDS (añadido después a VSAM) contiene una secuencia de bytes sin ningún orden de organización intrínseco.
Los registros de un VSAM pueden ser de una longitud fija o variable. Están organizados en bloques de tamaño fijo llamados Intervalos de Control (IC) y a su vez en divisiones más grandes llamadas Áreas de Control (AC). El tamaño de los Intervalos de Control se miden en bytes — por ejemplo 4 kilobytes — y las Áreas de Control en número de pistas o cilindros de disco. Puesto que los Intervalos de Control son las unidades de transferencia entre el disco y la computadora, una lectura completa leerá un Intervalo de Control. Por su parte, las Áreas de Control son las unidades de reserva de espacio, de tal manera que cuando al definir un VSAM, se definen un número entero de Áreas de Control.
La manipulación de ficheros VSAM ("borrar y definir") se realiza normalmente a través de la utilidad IDCAMS. Los programas propios pueden acceder a ficheros VSAM mediante sentencias de "data definition" (DD) en los JCL o en las regiones en línea de CICS.
Tanto IMS como DB2 están implementados sobre ficheros VSAM usando su estructura de datos.