Отправка записи COBOL в тему Кафки - PullRequest
0 голосов
/ 22 января 2020

У меня есть пакетная программа COBOL, которая должна помещать сообщения в топику Кафки c. Я знаю, что есть функции, позволяющие мне выгружать файл или таблицу DB2 в Kafka topi c с мэйнфрейма. И я могу выполнить это sh, имея двухэтапное задание: 1.) Пакетное задание запускается и записывает в файл / таблицу. 2.) Загрузите файл / таблицу в Kafka topi c с мэйнфрейма.

Однако существуют ли какие-либо новые или существующие технологии или функции, которые позволят помещать пакетные сообщения COBOL в топику Kafka c во время выполнения?

1 Ответ

1 голос
/ 07 февраля 2020

Кевин, теперь вы можете запускать Apache Kafka напрямую в z / OS через z / OS Container Extensions (zCX). zCX - это стандартная полностью поддерживаемая функция, включенная в базовую операционную систему z / OS 2.4 без дополнительной оплаты, и она работает на любом компьютере IBM z14 (или выше), оснащенном кодом функции 0104. (Многие системы уже имеют F C 0104, потому что требуется запускать некоторые другие вещи, кроме zCX.) Вы все равно подключаетесь к контейнеру Docker / OCI, на котором запущен Kafka, через TCP / IP, но все это виртуально / память-в-памяти, поскольку Kafka может работать в том же Экземпляр z / OS в качестве вашей пакетной программы COBOL.

Если у вас еще нет zCX, вы все равно можете подготовиться к нему. Просто создайте и запустите нужные контейнеры Docker / OCI, такие как Kafka, на Linux на Z (или на машине LinuxONE), и затем вы можете переместить эти контейнеры без изменений в zCX, когда будете готовы. А если у вас нет среды Linux на Z (или LinuxONE) для работы, вы можете бесплатно получить ее в течение 120 дней в облаке сообщества IBM LinuxONE.

Да, Вы можете использовать MQ для z / OS, и это ужасный выбор c. Вам понадобится MQ-клиент в вашем контейнере Kafka, но для MQ-клиентов дополнительная плата не взимается, если у вас есть какая-либо из поддерживаемых IBM версий MQ для z / OS. Большим преимуществом MQ является Q (организация очередей), как правило, хорошо сочетающийся с пакетными программами, так что они могут перемещаться и асинхронно кормить Кафку. z / OS Connect Enterprise Edition - еще один хороший выбор, если вам нужны синхронные взаимодействия.

Другой возможный вариант, который доступен без дополнительной оплаты в базовой операционной системе z / OS 2.1 (или выше), - это клиент z / OS Web Enablement Toolkit. Этот инструментарий позволяет программам COBOL (и другим), работающим в z / OS, выполнять исходящие вызовы REST API. Он не настолько функционально богат, как z / OS Connect Enterprise Edition, и он только однонаправлен (поддерживает запросы от размещенной программы z / OS к REST API, предоставляемому службой, работающей где угодно, что может быть в самой z / OS, как в случае с Kafka REST API в zCX), но он все еще может соответствовать или даже превосходить ваши потребности. Вы можете найти больше информации об этом наборе инструментов, включая пример COBOL, здесь:

https://github.com/IBM/zOS-Client-Web-Enablement-Toolkit

...