Я люблю диагностировать такие проблемы...
80 М записей по 30 КБ каждая — это около 2,5 ТБ, и, поскольку вы читаете и записываете эти данные, вы обрабатываете как минимум 5 ТБ (не включая ввод-вывод для рабочих файлов). Если я правильно рассчитываю, это в среднем 500 МБ/с за три часа.
Первое, что нужно сделать, это понять, действительно ли DFSORT активно работает в течение 3 часов, или есть источники времени ожидания. Например, если ваши ленты представляют собой многотомные наборы данных, может потребоваться некоторое время для подключения ленты. Ищите это в сообщениях журнала заданий — может быть, 20 минут из ваших 3 часов просто ждут, пока будут смонтированы нужные ленты.
У вас также может возникнуть проблема с использованием ЦП, увеличивающая время ожидания. В зависимости от того, как настроена ваша система, ваша работа может заключаться в том, чтобы получать только небольшой кусок процессорного времени и ждать остальное время. Вы можете определить это, посмотрев на потребляемое время ЦП (оно также указано в сообщениях журнала заданий) и сравнив его с истекшим временем... например, если ваше задание получает 1000 секунд ЦП (TCB + SRB) в течение 3 часов, вы средняя загрузка ЦП за это время составила 9%. Может случиться так, что отправка вашей работы в другой класс работы имеет значение - спросите у местного системного программиста.
Конечно, 9% процессорного времени не может быть проблемой — ваша работа, вероятно, сильно связана с вводом-выводом, поэтому большая часть времени ожидания приходится на ожидание завершения ввода-вывода, а не на ожидание дополнительного времени процессора. Что вы действительно хотите знать, так это то, связано ли ваше время ожидания с доступом к ЦП, ожиданием ввода-вывода или по какой-либо другой причине. Опять же, ваш местный системный программист должен помочь вам ответить на этот вопрос, если он знает, как читать отчеты RMF.
Следующее, что нужно сделать, — это немного лучше понять ваш ввод-вывод, чтобы уменьшить общее количество физических операций ввода-вывода, которые необходимо выполнить, и/или сделать каждый ввод-вывод немного быстрее.
Подумайте об этом так: каждый физический ввод-вывод будет занимать как минимум 2-3 миллисекунды. В худшем случае, если каждая из этих 160 миллионов записей, которые вы читаете/записываете, занимает 3 мс, истекшее время составит 160 000 000 X 0,003 = 480 000 секунд, или пять с половиной дней!
Как упоминает другой респондент, размер блока и буферизация — ваши друзья. Поскольку большая часть времени в операции ввода-вывода сводится к срабатыванию ввода-вывода и ожиданию ответа, «большой ввод-вывод» не занимает намного больше времени, чем «малый ввод-вывод». Как правило, вы хотите выполнять как можно меньше и как можно больше физических операций ввода-вывода, чтобы сократить истекшее время.
В зависимости от типа используемого лентопротяжного устройства, вы сможете получить на ленте до 256 КБ блоков — это 7 записей на ввод-вывод. Ваш BLKSIZE=0 может уже дать вам это, в зависимости от того, как настроена ваша система. Однако обратите внимание, что это зависит от устройства, и следите за тем, чтобы ваш сайт не использовал один из виртуальных ленточных продуктов, которые отображают «настоящие» ленточные накопители на диск... здесь размеры блоков, превышающие определенный предел (32 КБ), имеют тенденцию работать медленнее.
Буферизация, к сожалению, более сложна, чем предлагался в предыдущем ответе ... оказывается, BUFNO предназначен для относительно простых приложений, использующих метод доступа IBM QSAM, и это не то, что делает DFSORT. Действительно, DFSORT довольно умно выполняет операции ввода-вывода и динамически создает буферы на основе доступной памяти. Тем не менее, вы можете попробовать выполнить задание в более крупном регионе (например, REGION=0 в вашем JCL), и вы можете найти параметры DFSORT, такие как справка MAINSIZE=MAX — см. эта ссылка для получения дополнительной информации.
Что касается вашего дискового ввода-вывода (который включает в себя эти наборы данных SORTWK), здесь тоже есть много вариантов. Ваш 30K LRECL в значительной степени ограничивает то, что вы можете сделать для блокировки, но есть всевозможные упражнения по настройке диска, которые вы можете выполнить, от использования наборов данных VIO до PAV (томов с параллельным доступом). Дело в том, что многое из этого также зависит от конфигурации, поэтому правильный ответ будет зависеть от того, что есть на вашем сайте и как все это настроено.
Но, возможно, самое важное заключается в том, что вы не хотите заниматься методом проб и ошибок, пока не наткнетесь на правильный ответ. Если вы хотите учиться, ознакомьтесь с RMF или любыми другими инструментами управления производительностью, которые есть на вашем сайте (или найдите системного программиста, который готов работать с вами) и копайте. Спросите себя, в чем узкое место - почему эта работа не выполняется быстрее. ? Затем найти узкое место, исправить его и перейти к следующему. Это потрясающие навыки, и как только вы освоите основы, это перестанет казаться черным искусством и больше походит на систематический процесс, которому вы можете следовать с чем угодно.
person
Valerie R
schedule
17.08.2018
30050
??? и, как сказал phunsoft, его нужно записывать на ленту.Check the attributes of the input file
- person Bruce Martin   schedule 28.07.2018