Алгоритм поисковой утилиты для мэйнфрейма

Может ли кто-нибудь дать мне несколько указаний о том, как работает алгоритм поисковой утилиты для мэйнфреймов IBM?

Как он сравнивает строки? Какой алгоритм сопоставления он использует? Как мне вводить разные строки, чтобы сделать меньше сравнений?

Я использую эту утилиту, но не знаю, как она работает, и считаю, что использую ее не так хорошо, как следовало бы.

Большое спасибо за Вашу помощь!


person Pedro Luís    schedule 09.10.2018    source источник
comment
Не забывайте, что z / OS UNIX Services включает полную и совместимую со стандартами версию таких инструментов, как grep, которые могут выполнять очень сложное сопоставление шаблонов с регулярными выражениями практически для любых данных мэйнфрейма. Если вы пришли с другой платформы, где регулярное выражение является обычным явлением, не нужно отказываться от него на z / OS. Вы даже можете использовать эти инструменты с синтаксисом // dsn (member), и по большей части они работают как с обычными наборами данных z / OS, так и с файлами UNIX.   -  person Valerie R    schedule 16.10.2018
comment
Привет. Прежде всего, спасибо за ваш вклад. Я нахожу это довольно приятным. Я использовал их только с некоторыми командами и применял очень простые регулярные выражения. После краткого поиска я все еще не уверен, как правильно их использовать, чтобы максимально использовать возможности мэйнфрейма. Думаю, мне нужно немного больше на TSO. Спасибо!   -  person Pedro Luís    schedule 17.10.2018
comment
Уловка заключается в том, чтобы познакомиться с оболочкой служб UNIX в z / OS. Есть разные способы сделать это ... с одной стороны, вы можете просто использовать Telnet или SSH для прямого подключения к вашему мэйнфрейму, и вы увидите оболочку UNIX, которая почти идентична той, что вы видели в Linux / UNIX. Есть также такие вещи, как команда TSO OMVS, которая дает вам оболочку, которая запускается прямо внутри вашего сеанса TSO. Это отличные инструменты для всех, кто имеет навыки работы с UNIX и приходит к мэйнфреймам, поскольку почти все будет им сразу же знакомо.   -  person Valerie R    schedule 29.01.2019
comment
Спасибо Валери. Посмотрим на это. Самая большая трудность, с которой я сейчас сталкиваюсь, - это после знакомства с первым введением в Z / OS и мэйнфрейм, как глубже и глубже понять среду мэйнфрейма и познакомиться с ее тонкостями.   -  person Pedro Luís    schedule 04.02.2019


Ответы (2)


Считайте это очень глупым поиском.

У него нет возможности войти в REGEX или что-то в этом роде. Не думаю, что кто-то сможет сказать вам, какой алгоритм используется.

Search-For использует программу SuperC для фактического выполнения поиска. Похоже, что он выполняет построчный поиск совпадения с введенной вами строкой. Итак, если я выполню поиск:

'PIC 9(9)'

Я собираюсь получить результаты для каждой строки, в которой есть эта строка. Единственный способ получить меньше результатов поиска - это добавить больше к этой строке. Так что, возможно, ищите:

'PIC 9(9).' 'PIC 9(9) VALUE 'PIC 9(9) COMP'

любой из этих 3 результатов даст меньше результатов, чем первый поиск. Итак, если эта строка разрывает строку, например:

05 WS-SOME-VARIABLE PIC 9(9)
   VALUE 123456.

поиск 'PIC 9(9) VALUE' ничего не даст, а поиск 'PIC 9(9)' даст.

Чем конкретнее вы будете, тем меньше результатов поиска вы получите. В зависимости от того, что вы ищете, вы можете получить лучшие результаты, используя Search-For в пакетном режиме или вместо него File-Aid. Каждый конкретный сценарий индивидуален. Поэтому, не зная точно, что вы ищете и каковы ваши требования, трудно сказать вам, как действовать дальше.

person SaggingRufus    schedule 09.10.2018
comment
Большое спасибо за ваш ответ. - person Pedro Luís; 10.10.2018
comment
Большое спасибо за ваш ответ. Это довольно поучительно. Меня в основном интересовало, так как время, которое у меня уходит на поиск в большом PDS (около 15000 элементов в наборе данных), очень велико. Несмотря на то, что я ищу около 50 символов в строке, я думал, что может существовать лучший способ. И мне также было интересно узнать, какова сложность алгоритма, реализованного IBM (временная сложность и количество сравнений на образец или текст). Еще одна вещь. Каковы преимущества использования пакетного поиска по сравнению с инструментом поиска? В чем разница? - person Pedro Luís; 10.10.2018
comment
Пакетный поиск означает, что ваш терминал не заблокирован, пока поиск выполняется. Что вы считаете «значительным временем»? 15000 примерно за 5 минут - это не долго. Учитывайте все распределение / освобождение каждого члена, что занимает больше всего времени при поиске каждого члена. - person NicC; 12.10.2018
comment
Спасибо за помощь. Простите за вопрос новичка. Я вообще не сосредотачивался на распределении / освобождении каждого члена. Это может быть довольно неприятным. Спасибо, что пролили свет на проблему. Я видел только супермашину, делающую сравнение за 5 минут. Тем не менее, если бы не этап выделения / освобождения, я был бы не очень доволен производительностью мэйнфрейма. Это или я делал что-то серьезно неправильно! Спасибо за ваше время. - person Pedro Luís; 12.10.2018
comment
Вы можете попробовать добавить BUFNO = в оператор NEWDD, если большинство размеров членов PDS будет охватывать несколько блоков, для числа ›5 (по умолчанию). Однако это не сработает, если ISRSUPC (ASMASUPC) использует BPAM для чтения элементов, поскольку BUFNO является параметром только QSAM. (Я подозреваю, что он использует BPAM, поскольку с помощью этого метода доступа было бы легче читать членов (а BPAM уже читает блок за раз)). - person zarchasmpgmr; 18.10.2018

Вы можете рассмотреть IBM Developer for z, который может выполнять поиск на основе регулярных выражений. Когда демон Remote Systems Explorer Daemon (RSED) настроен и запущен на z / OS lpar, вы можете выполнять поиск в одном PDS или группах PDS, используя фильтры IDz. Очень могущественный. Он также выполняет поиск в фоновом режиме, поэтому вы можете выполнять другие задачи во время поиска. Результаты поиска можно сохранить для удобства использования в будущем.

person Kenny    schedule 18.10.2018
comment
Спасибо за ваш вклад. Я не знал об этом люксе. Это кажется очень интересным. К сожалению, использовать его - это не вариант для моей компании. Тем не менее, я буду изучать его, поскольку он дает большие преимущества для выполнения, казалось бы, сложных задач. - person Pedro Luís; 19.10.2018