Чтение файлов ISAM COBOL с использованием Pentaho DI

У нас есть несколько очень старых файлов ISAM COBOL на мейнфрейме, содержащих исторические данные. Мне нужно построить процесс ETL для чтения/переноса этих данных (хранящихся в файлах ISAM) с помощью Pentaho DI и загрузить их в базу данных PostgreSQL с небольшими преобразованиями или без них.

Как мне добиться этого с помощью Pentaho DI?

Одним из обходных решений может быть написание программы Cobol для преобразования файлов ISAM в обычные наборы данных в мейнфрейме, а затем легкое чтение преобразованных файлов по ftp. Однако, пожалуйста, дайте мне знать, есть ли решение для чтения непосредственно из файлов ISAM с помощью Pentaho без необходимости разработки другой программы cobol. Кроме того, пожалуйста, дайте мне знать какие-либо советы по миграции.


person Raj Aryan    schedule 16.03.2016    source источник
comment
Вы действительно имеете в виду ISAM или VSAM? Я сомневаюсь, что кто-то будет поддерживать что-либо с файлами ISAM для мэйнфреймов, они не ожидают, что кто-то будет использовать их через 30 с лишним лет после существования VSAM,   -  person Bill Woodger    schedule 17.03.2016
comment
Одной из возможных альтернатив является поиск драйвера JDBC для ваших файлов (независимо от их типа). Однако на первый взгляд я вижу только коммерческие предложения.   -  person Brian.D.Myers    schedule 17.03.2016


Ответы (1)


Вы не сможете напрямую импортировать файлы ISAM (VSAM ???) непосредственно в Pentaho.

Вам не нужно писать программу для выгрузки файлов ISAM (VSAM ???), для выгрузки можно использовать существующие утилиты мэйнфрейма (сортировка и т. д.). Затем выгруженный файл может быть передан в вашу систему (вероятно, это будет файл binary-ebcdic), сможете ли вы обработать файл — это другой вопрос.


Файлы:

Сложные файлы (например, содержащие Cobol Refines, Occurs Defines) потребуют Cobol.

Для простых файлов:

  • Mainframe-Sort может преобразовывать двоичные файлы в текстовые, если это необходимо.
  • Насколько я помню, у Pentaho есть некоторые возможности Cobol (на основе cobol2j/cb2xml)
  • для обработка кобола.
  • В JRecord есть программы Cobol-to-Csv, которые можно использовать для преобразования файлов Cobol в CSV.

Но:

  • Файлов может быть недостаточно, вам могут понадобиться другие связанные детали, для которых могут потребоваться дополнительные программы извлечения Cobol.
  • Структура текущих таблиц, вероятно, не идеальна для вашей новой цели. Иногда может быть проще выполнить некоторую трансформацию мейнфрейма, потому что у вас есть все связанные таблицы / БД, присутствующие на мейнфрейме.

На что обратить внимание

  • Cobol Переопределяет — необходимо разобраться в Cobol на мейнфрейме (или на шаге Java~JRecord). Предложение Redefines представляет собой серьезную проблему, когда поля Pic-x/9 переопределяют двоичные поля (comp/comp-3).
  • Происходит в зависимости от — исправлено в Cobol перед передачей.
  • Мультизапись файлы

Другие подходы

Раскрытие информации: я написал JRecord и работал над cb2xml.

person Bruce Martin    schedule 16.03.2016
comment
Какой позор, это не было принято в качестве ответа ОП. - person PepitoSh; 14.04.2021
comment
Спасибо @PepitoSh, как оно есть. Люди не могут использовать Cobol не так много чтений / голосов. С положительной стороны, нет такой большой конкуренции, чтобы ответить на вопросы - person Bruce Martin; 15.04.2021