Характеристика наборов данных
Операционная система z/OS поддерживает работу с наборами данных, различающимися по типу логической организации: последовательными, индексно-последовательными, прямого доступа, библиотечными (PDS и PDSE), наборами данных, использующими метод доступа на основе виртуальной памяти (VSAM), а также наборами данных файловой системы UNIX (HFS, zFS) [11]. Для поддержки наборов данных различных типов в составе DFSMSdfp представлены компоненты, получившие название методы доступа и описанные в п. 5.1.3. Каждый метод доступа ориентирован на работу с наборами данных определенного типа и обеспечивает поддержку необходимых операций для организации ввода-вывода.
Операционная система z/OS обеспечивает обработку наборов данных на уровне логических записей и блоков. Это означает, что набор данных представляется в виде совокупности логических записей, а приложения получают доступ к логическим записям и обрабатывают их как единое целое. В то же время обмен данными между периферийными устройствами и основной памятью (ввод-вывод) осуществляется блоками (или физическими записями). В блоке объединяется некоторое количество логических записей. Таким образом, для каждого набора данных необходимо установить согласованные размеры логических записей и блоков.
В z/OS поддерживаются три формата логических записей: записи фиксированной длины, записи переменной длины, записи неопределенной длины. Записи фиксированной длины имеют постоянный размер и в языке управления заданиями идентифицируются символами F или FB в зависимости от выбранного способа блокирования записей:
- F - в каждом блоке содержится только одна логическая запись;
- FB - каждом блоке может содержаться более одной логической записи.
Записи переменной длины могут иметь различный размер внутри одного набора данных, поэтому помимо данных они включают в себя дополнительное поле (дескриптор), где указывается длина текущей записи. Используемый для обозначения записей переменной длины идентификатор V означает, что в каждом блоке содержится только одна логическая запись, включая дескриптор записи.
Идентификатор VB применяется в тех случаях, если в каждом блоке может содержаться более одной логической записи, при этом для каждого блока дополнительно формируется дескриптор, содержащий длину блока.
Записи неопределенной длины (идентификатор U) характеризуются только размером блока и не содержат никакой информации о делении на логические записи.
Каждый набор данных характеризуется уникальным именем. Имена бывают простые и составные. Простое имя может содержать не более 8 символов (латинские буквы A-Z, цифры 0-9, спецсимволы #,@,$,-), причем первым символом имени не может быть цифра. Например, РАRTS01, B1934-1, $$$$A.
Составное имя набора данных складывается из нескольких простых, разделенных символом "." ("точка"). Например, D.USER1.JCL, А.VERY.LONG.DATASET.NАМЕ, $PARTS.DАTА2.
Максимальная длина составного имени - 44 символа, включая разделительные точки.
Простые имена в составном имени принято называть квалификаторами.
Далее будут рассмотрены основные типы организации наборов данных, за исключением индексно-последовательных и наборов данных прямого доступа (не рекомендованы IBM к использованию как устаревшие) и HFS (будут рассмотрены в п. 5.1.6).