Объединение сортировки мэйнфреймов
Утилита Sort/Merge в файле в — это программа для мэйнфреймов , позволяющая сортировать записи заданном порядке, объединять предварительно отсортированные файлы в отсортированный файл или копировать выбранные записи. Внутри эти утилиты используют один или несколько стандартных алгоритмов сортировки , часто с собственным тщательно настроенным кодом.
Первоначально мэйнфреймы поставлялись с ограниченной оперативной памятью по сегодняшним стандартам, и объем сортируемых данных часто был очень большим. По этой причине, в отличие от более поздних программ сортировки, ранние программы сортировки/объединения уделяли большое внимание эффективным методам сортировки данных во вторичном хранилище , обычно на ленте. [а] или диск . В 1968 году программа OS/360 Sort/Merge предоставила пять различных «методов распределения последовательностей», которые можно было использовать в зависимости от количества и типа доступных устройств. [1]
Исторически «псевдоним» SORT использовался для обозначения предпочтительной программы сортировки установки, программ IBM Sort/Merge и сторонних программ Sort/Merge (т. е. SYNCSORT, CASORT). DFSORT часто называют по названию программы ICEMAN (компонент ICE; исходное имя программы сортировки/объединения OS/360 было IERRCO00, компонент IER, также с «псевдонимом» SORT).
Виртуальные системы хранения [ править ]
До System/370 все операционные системы для мэйнфреймов IBM включали утилиты сортировки/слияния. [б] С анонсом виртуальной памяти операционных систем DOS/VS и OS/VS IBM разделила большую часть программного обеспечения и предложила платные программные продукты сортировки/объединения. Для OS/VS IBM предложила 5734-SM1, OS Sort/Merge, а позже предложила 5740-SM1, OS/VS Sort/Merge, впоследствии переименованную в Data Facility Sort (DFSORT).
В 1990 году IBM представила новый алгоритм слияния под названием BLOCKSET в DFSORT, преемнике OS/360 Sort/Merge. [2] Исторически следует отметить, что алгоритм BLOCKSET был изобретен системным инженером IBM в 1963 году, обнаружен в архивах IBM и реализован в 1990 году. [3]
Использование [ править ]
Сортировка/Объединение используется очень часто; часто наиболее часто используемая прикладная программа в магазине мэйнфреймов, обычно потребляющая около двадцати процентов вычислительной мощности магазина.
Современные программы сортировки/объединения также могут копировать файлы, выбирать или исключать определенные записи, суммировать записи, удалять дубликаты, переформатировать записи, добавлять новые данные и создавать отчеты. Действительно, большинство приложений сортировки/объединения используют широкий спектр дополнительных возможностей обработки, а не просто сортировку или объединение записей: продукт сортировки/объединения представляет собой очень быстрый способ выполнения ввода и вывода этих функций. Поддерживается довольно много «пользовательских выходов», и это могут быть загрузочные модули (т. е. члены библиотеки) или колоды объектов (т. е. выходные данные ассемблера) с загрузкой приложения сортировки/объединения (загрузка модулей ) или связывание (колоды объектов; в DFSORT это называется «редактированием динамических ссылок») выхода, как указано и требуется. Наборы данных рабочей памяти (т. е. SORTWK01, ..., SORTWKnn) могут быть на диске или на ленте, хотя алгоритм BLOCKSET ограничен дисковой рабочей памятью; Увеличение количества рабочих наборов данных обычно повышает производительность.
Конкурс [ править ]
Сортировка/слияние настолько важна, что существует множество компаний, каждая из которых продает свой собственный пакет сортировки/слияния для мэйнфреймов IBM и их z/OS , z/VM и z/VSE операционных систем . Эти программы в значительной степени совместимы с программами IBM SORT, часто с некоторыми расширениями. Основные пакеты сортировки/объединения:
- DFSORT, продаваемый IBM .
- SyncSort продается компанией Syncsort , Inc.
- CA-Sort продается компанией CA Technologies .
(Некоторые из этих компаний также продают версии для других платформ, таких как Unix , Linux или Windows .)
Миграция [ править ]
Сортировка/объединение является важнейшим компонентом многих сред мэйнфреймов. При переходе с мэйнфрейма на другие платформы, такие как Unix , Linux или Windows , необходима утилита сортировки/объединения; [4] MFSORT от Micro Focus и AHLSORT [5] эмулировать функции DFSORT вне среды мэйнфрейма.
СОРТИРОВКА IBM OS/360 [ править ]
До появления операционных систем виртуального хранилища «набор входных данных [был] почти всегда слишком велик, чтобы его можно было перенести в основное хранилище и отсортировать сразу». SORT использовала технику выбора замены, чтобы уменьшить использование памяти. [1] В программе особое внимание уделялось методам последовательного распределения , которые могут быть установлены по умолчанию в зависимости от количества и типа доступных устройств или могут быть указаны пользователем для наилучшего использования файлов «сортировки» вторичного хранилища (SORTWK). Эти методы представляли собой методы наиболее эффективного распределения частично отсортированных последовательностей записей.
Для OS/360 SORT было доступно пять методов распространения: [1]
- Методы магнитной ленты
- Сбалансированный (BALN) — требуется минимум 12 000 байт основного хранилища и 2x+1 ленточных устройств для промежуточного хранения, где x — количество входных томов ленты, максимум до 15 входных барабанов.
- Многофазный (POLY) — требуется минимум 12 000 байт и 3 промежуточных ленточных устройства хранения. Разрешался только один входной барабан.
- Осциллирующий (OSCL) — требуется 21 000 байт и максимальное количество промежуточных ленточных устройств (x+2,4), где x — количество входных томов, максимум до 15.
- Методы прямого доступа
- Сбалансированный (BALN) — требуется минимум 13 000 байт и от 3 до 6 рабочих областей диска. Максимальное количество записей, которые можно было отсортировать, зависело от доступной основной и дополнительной памяти.
- Crisscross (CRCX) — недоступно для IBM 2311 или IBM 2301 дополнительных устройств хранения данных . Требуется минимум 24 000 байт основной памяти и от 6 до 17 рабочих областей вспомогательной памяти. Максимальное количество записей, которые можно было отсортировать, зависело от доступной основной и дополнительной памяти.
IBM OS/VS SORT [ править ]
Методы распределения, перечисленные для сортировки лент, были сохранены в программе OS/VS SORT и теперь называются «традиционными методами». Методы дисковой сортировки были заменены четырьмя новыми: [6]
- FLR-Blockset для записей фиксированной длины
- VLR-Blockset для записей переменной длины
- Пэрат для записей фиксированной длины
- Значение для записей как фиксированной, так и переменной длины.
См. также [ править ]
Примечания [ править ]
- ^ В 1950-х и 1960-х годах лента была наиболее распространенным носителем для сортировки рабочих файлов, но по мере того, как стоимость устройств хранения с прямым доступом упала, использование ленты стало редким, за исключением очень больших файлов.
- ^ CMS использовала программу сортировки DOS/360.
Ссылки [ править ]
- ^ Jump up to: Перейти обратно: а б с Корпорация IBM (1968). Сортировка/объединение операционной системы IBM System/360 (GC28-6435-5) (PDF) . стр. 16–17.
- ^ «Руководство по настройке z/OS DFSORT» . 28 сентября 2013 года . Проверено 2 октября 2014 г.
- ^ «Сортировка по ключевым тегам». Обмен технической информацией IBM . 22 июня 1963 года.
- ^ Долго, Ларри. «Пять основных проблем миграции мэйнфреймов, с которыми сталкиваются ИТ-лидеры» . Форбс .
- ^ «IFL – экономичная платформа zSeries?» . 3 сентября 2014 г.
- ^ Корпорация IBM (сентябрь 1979 г.). Логика сортировки/объединения OS/VS (PDF) . п. 2 . Проверено 21 июня 2021 г.