Набор данных (мейнфрейм IBM)
В контексте IBM мейнфреймов линейки S/360 набор данных (предпочтительно IBM) или набор данных представляет собой компьютерный файл, имеющий организацию записи . Использование этого термина началось, например, с DOS/360 , OS/360 и до сих пор используется их преемниками, включая нынешнюю z/OS . В документации для этих систем исторически отдавалось предпочтение этому термину, а не файловому .
Набор данных обычно хранится на запоминающем устройстве прямого доступа (DASD) или на магнитной ленте . [1] однако устройства единичной записи, такие как считыватели перфокарт, перфораторы карт, линейные принтеры и страничные принтеры, могут обеспечивать ввод/вывод (I/O) для набора данных (файла). [2]
Наборы данных не представляют собой неструктурированные потоки байтов , а организованы в различные логические записи. [3] и блочные структуры, определяемые DSORG
(организация набора данных), RECFM
(формат записи) и другие параметры. Эти параметры указываются во время выделения (создания) набора данных, например, с помощью языка управления заданиями. DD
заявления. В работающей программе они хранятся в блоке управления данными (DCB) или блоке управления доступом (ACB), которые представляют собой структуры данных, используемые для доступа к наборам данных с использованием методов доступа .
Записи в наборе данных могут иметь фиксированную, переменную или «неопределенную» длину. [4]
Организация набора данных
[ редактировать ]Для OS/360 DCB DSORG
Параметр указывает, как организован набор данных. Это может быть [5]
- CQ
- Метод доступа к телекоммуникациям с очередью (QTAM) в программе управления сообщениями (MCP)
- CX
- Группа линий связи
- И
- Базовый метод прямого доступа (BDAM)
- GS
- Графическое устройство для метода доступа к графике (GAM)
- ЯВЛЯЕТСЯ
- Метод индексированного последовательного доступа (ISAM)
- МК
- Очередь сообщений QTAM в приложении
- PO
- Разделенная организация
- ПС
- Физический последовательный
среди других.Наборы данных на ленте могут храниться только DSORG=PS
. Выбор организации зависит от способа доступа к данным и, в частности, от того, как они будут обновляться.
Программисты используют различные методы доступа (например, QSAM или VSAM ) в программах для чтения и записи наборов данных. Способ доступа зависит от организации данного набора данных.
Формат записи (RECFM)
[ редактировать ]Независимо от организации физическая структура каждой записи по существу одинакова и едина для всего набора данных. Это указано в ДКБ. RECFM
параметр. RECFM=F
означает, что записи имеют фиксированную длину, указанную через LRECL
параметр. RECFM=V
указывает запись переменной длины. Записи V при хранении на носителе имеют префикс слова дескриптора записи (RDW), содержащего целочисленную длину записи в байтах и битах флага. С RECFM=FB
и RECFM=VB
Несколько логических записей группируются в один физический блок на ленте или DASD. ФБ и ВБ есть fixed-blocked
, и variable-blocked
, соответственно. RECFM=U (не определено) также имеет переменную длину, но длина записи определяется длиной блока, а не управляющим полем.
The BLKSIZE
Параметр определяет максимальную длину блока. RECFM=FBS
[6] также может быть указано, что означает fixed-blocked standard
, то есть все блоки, кроме последнего, должны были быть полностью BLKSIZE
длина. RECFM=VBS
, или variable-blocked spanned
, означает, что логическая запись может быть разбита на два или более блоков, при этом флаги в RDW указывают, продолжается ли сегмент записи в следующий блок и/или был ли он продолжен с предыдущего.
Этот механизм устраняет необходимость использования какого-либо байтового значения «разделителя» для разделения записей. Таким образом, данные могут быть любого типа, включая двоичные целые числа, числа с плавающей запятой или символы, без введения ложного условия конца записи. Набор данных представляет собой абстракцию набора записей, в отличие от файлов как неструктурированных потоков байтов.
Секционированный набор данных
[ редактировать ]Секционированный набор данных ( PDS ) [7] — это набор данных, содержащий несколько элементов , каждый из которых содержит отдельный набор подданных, аналогичный каталогу в других типах файловых систем . Этот тип набора данных часто используется для хранения загрузочных модулей (исполняемые программы, привязанные к старому формату), библиотек исходных программ (особенно определений макросов Ассемблера), определений экрана ISPF и языка управления заданиями . PDS можно сравнить с Zip- файлом или структурированным хранилищем COM .
Секционированный набор данных может быть размещен только на одном томе и иметь максимальный размер 65 535 дорожек.
Помимо участников, PDS содержит также каталог. Доступ к каждому члену можно получить косвенно через структуру каталогов. После обнаружения элемента данные, хранящиеся в этом элементе, обрабатываются так же, как набор данных PS (последовательный).
Всякий раз, когда элемент удаляется, занимаемое им пространство становится непригодным для хранения других данных. Аналогично, если элемент перезаписан, он сохраняется в новом месте в задней части PDS, оставляя в середине ненужное «мертвое» пространство. Единственный способ восстановить «мертвое» пространство — выполнить сжатие файлов. [8] Сжатие, которое осуществляется с помощью утилиты IEBCOPY , [9] перемещает всех членов в начало пространства данных и оставляет свободное полезное пространство сзади. (Обратите внимание, что на современном языке этот вид операции можно назвать дефрагментацией или сборкой мусора ; сжатие данных в настоящее время относится к другой, более сложной концепции.) Файлы PDS могут храниться только на DASD , а не на магнитной ленте , чтобы использовать структура каталогов для доступа к отдельным участникам. Секционированные наборы данных чаще всего используются для хранения нескольких языковых файлов управления заданиями , операторов управления утилитами и исполняемых модулей.
Усовершенствованием этой схемы является расширенный секционированный набор данных (PDSE или PDS/E, иногда просто библиотеки ), представленный в DFSMSdfp для MVS/XA и MVS/ESA систем . Библиотека PDS/E может хранить программные объекты или элементы других типов, но не то и другое. BPAM не может обрабатывать PDS/E, содержащий программные объекты.
Структура PDS/E аналогична PDS и используется для хранения тех же типов данных. Однако файлы PDS/E имеют лучшую структуру каталогов, которая не требует предварительного выделения блоков каталогов при определении PDS/E (и, следовательно, не исчерпывает блоки каталогов, если было указано недостаточно). Кроме того, PDS/E автоматически сохраняет элементы таким образом, что для освобождения «мертвого» пространства не требуется операция сжатия. [8] Файлы PDS/E могут находиться только на DASD, чтобы использовать структуру каталогов для доступа к отдельным элементам.
Группа данных генерации
[ редактировать ]Группа данных о поколениях [10] ( ГДГ ) [11] представляет собой группу наборов данных, отличных от VSAM. [12] которые представляют собой последовательные поколения исторически связанных данных [13] хранится на мэйнфрейме IBM (под управлением ОС или DOS/VSE ). [14]
GDG обычно каталогизируется. [13]
Отдельный член коллекции GDG называется « Набором данных генерации ». [13] [15] Последний может быть идентифицирован абсолютным числом, ACCTG.OURGDG(1234)
или относительное число: (-1) для предыдущего поколения, (0) для текущего и (+1) для следующего поколения. [16]
GDG JCL и возможности
[ редактировать ]Группы данных генерации определяются с помощью оператора BLDG [17] утилиты IEHPROGM или оператора DEFINE GENERATIONGROUP. [18] новой утилиты IDCAMS , [19] который позволяет устанавливать различные параметры.
LIMIT(10)
ограничит число поколений до 10.SCRATCH FOR (91)
будет удерживать каждого члена, вплоть до ограниченного # поколения, не менее 91 дня.
IDCAMS также может удалить (и, при необходимости, удалить из каталога) GDG. [20]
Ссылки
[ редактировать ]- ^ «Что такое каталог?» . ИБМ .
Каталогизация наборов данных на магнитной ленте...
- ^ «Центр знаний IBM — главная страница документации по продуктам IBM» . publib.boulder.ibm.com .
- ^ «Что такое набор данных?» . ИБМ .
набор данных.. файл, содержащий одну или несколько записей.
- ^ «Форматы записей наборов данных» . ИБМ .
Записи имеют фиксированную или переменную длину в данном наборе данных.
- ^ «Раздел IV: Заявление DD — параметр DCB» (PDF) . Операционная система IBM System/3S0: Справочник по языку управления заданиями — выпуск ОС 21.7 (PDF) . Справочная библиотека по системам IBM. ИБМ. стр. 138–139. GC28-6704-4.
- ^ «Пример: формат записи VBS» . ИБМ .
Переменной длины, блокированный, составной (VBS)
- ^ «Структура PDS», z/OS DFSMS с использованием наборов данных, версия 2, выпуск 3 (PDF) , 2 октября 2018 г., SC23-6855-30
- ^ Jump up to: а б Стивенс, Дэвид (октябрь 2008 г.). Что такое мэйнфрейм? . Лулу.com. п. 52. ИСБН 978-1-4092-2535-5 . Проверено 11 мая 2018 г.
- ^ «Сжатие секционированного набора данных», z/OS DFSMSdfp Utilities, версия 2, выпуск 3 (PDF) , IBM Corporation, 17 июля 2017 г., SC23-6864-30.
Секционированный набор данных будет содержать неиспользуемые области (иногда называемые газом), в которых удаленный участник или старая версия обновленного участника, когда-то существовавшая. Это неиспользуемое пространство освобождается только тогда, когда секционированный набор данных копируется в новый набор данных или после успешного завершения операции сжатия на месте. Он не имеет значения для PDSE и игнорируется, если его запрашивают.
- ^ «Группы генерирующих данных (GDG), введение с примерами» .
создать и обработать группу данных генерации или GDG на…
- ^ «СПРАВОЧНИК ПО JCL — Генерация групп данных» .
Группы данных о генерации (GDG)
- ^ «Что такое группа данных поколения?» . IBM.com .
...не-VSAM...
- ^ Jump up to: а б с «Генерация наборов данных» . ИБМ .
последовательные, исторически связанные,
- ^ «Команды VSE/VSAM» (PDF) .
- ^ «Набор данных поколения является одним из ...
- ^ «Что такое ГДГ?» .
- ^ «Заявление BLDG (индекс создания сборки)» (PDF) . Утилиты ОС (PDF) . Справочная библиотека систем IBM (Шестнадцатое изд.). ИБМ . Апрель 1973 г. с. 269. GC28-6586-15 . Проверено 19 мая 2022 г.
- ^ «Определение группы данных генерации» (PDF) . Службы методов доступа OS/VS (PDF) (второе изд.). ИБМ . Май 1974 г., стр. 107–110. GC26-3836-1 . Проверено 19 мая 2022 г.
{{cite book}}
:|work=
игнорируется ( помогите ) - ^ «IBM Как создавать и использовать группы данных генерации (GDG)» . ИБМ . 2 марта 2012.
Создайте GDG... IDCAMS сделает это
- ^ «IDCAMS – Создание и удаление базы GDG с помощью JCL» .
- Введение в новый мэйнфрейм: основы z/OS. Архивировано 25 апреля 2019 г. в Wayback Machine , гл. 5, «Работа с наборами данных», 29 марта 2011 г. ISBN 0738435341