FoxBase!
msgbartop
Блог Oracle разработчика
msgbarbottom
foxbase

03.01.2012 Создание и настройка Агентов (Agents) Oracle Data Integrator

ODI Agent
В предыдущей статье мы установили Oracle Data Integrator и создали Master и Work репозитории. Теперь необходимо выполнить создание, настройку и запуск Агентов ODI.
Агенты в архитектуре Oracle Data Integrator играют важную роль и подразделяются на физические и логические.

Физический Агент

Физический агент - это Java приложение, которое непосредственно занимается передачей данных извне в репозиторий ODI для дальнейшей загрузки или выгрузкой преобразованных данных для внешних систем. В качестве источника данных или цели (target) может выступать плоский или XML файл, таблицы какой-либо СУБД или JMS. Агент при необходимости может запускать специальные внешние утилиты для загрузки данных, делегируя этим утилитам функции по загрузке данных, например, Oracle SQL Loader или Oracle Data Pump. В процессе загрузки Агент ODI передает данные в репозиторий ODI (или же принимает данные из репозитория) по протоколу HTTP.
В продуктивной среде может быть развернуто несколько физических агентов для параллельной загрузки данных с применением технологии балансировки нагрузки. Агент физически может быть установлен на тоже же машине, где находится целевая СУБД или же на другой, если этого требует архитектура конкретного приложения.
Физический Агент может быть запущен как отдельное Java приложение (standalone agent), так и в виде сервиса для сервера приложений Oracle WebLogic. Такая возможность стала доступной начиная с 11 версии ODI. В этой статье мы рассмотрим запуск простого Агента как отдельного Java приложения. Агент может обслуживать только один рабочий репозиторий. Поэтому для девелоперской, тестовой и продуктивной сред необходимо будет создавать отдельные Агенты.
Для целей разработки проектов интеграции достаточно настроить и запустить один физический агент, располагаемый на том сервере, на котором ведется разработка приложения и его тестирование. В любом случае, на этом сервере должно быть установлено программное обеспечение Агента ODI. При инсталляции ODI можно выбрать опцию, которая выполнит установку Агента. В этом случае будет предложено ввести хост и порт, используя которые должен отвечать Агент. Ниже мы рассмотрим общий случай настройки и запуска нового физического Агента. Для этого необходимо открыть каталог с конфигурационными файлами настройки агентов, например:
C:\oracle\product\11.1.1\Oracle_ODI_1\oracledi\agent\bin
В этом каталоге необходимо открыть и отредактировать файл odiparams.bat. Прежде всего установите правильные настройки на соединение с базой данных Master репозитория:
REM #
REM # Repository Connection Information
REM #
set ODI_MASTER_DRIVER=oracle.jdbc.OracleDriver
set ODI_MASTER_URL=jdbc:oracle:thin:@localhost:1521:orcl
set ODI_MASTER_USER=odim
set ODI_MASTER_ENCODED_PASS=gxf34kz0744eaCpL4XSEFzxoj8E0p

REM #
REM # User credentials for agent startup program
REM #
set ODI_SUPERVISOR=SUPERVISOR
set ODI_SUPERVISOR_ENCODED_PASS=hpfXTC5q.53tp9PLlIvQrAhue

REM #
REM # Work Repository Name
REM #
set ODI_SECU_WORK_REP=WORKREP1
В этом файле мы указываем параметры базы данных Master и Work репозиториев и логины к Master репозиторию и пользователя ODI SUPERVISOR. Пароли к логинам указываются в зашифрованном виде, что повышает безопасность. Шифрованный код паролей одноразовый и он может быть получен при помощи утилиты encode.bat:
encode.bat незашифрованный_пароль
ODI encode.bat
На этом этапе мы выполнили основные настройки для физических агентов, которые могут быть запущены на этой машине. Теперь необходимо создать физический агент, например, с именем agent_1. Для этого создадим bat файл с параметрами запуска для agent_1.
C:\oracle\product\11.1.1\Oracle_ODI_1\oracledi\agent\bin\agent.bat "-NAME=Agent_1" "-PORT=20100"
Как видно, в качестве параметров запуска конкретного физического Агента мы указали его имя и порт, на котором он будет слушать запросы ODI. Но на этом этапе запускать его пока что не имеет смысла, так как репозиторий ничего не знает о новом физическом агенте. Для этого необходимо его создать в репозитории и указать соответствующие параметры. Запускаем ODI Studio, выполняем соединение с репозиторием, открываем в навигаторе вкладку Topology, находим узел Agents и правой кнопкой мыши создаем новый Агент:
ODI New Agent
Вводим имя Агента, хост и порт:
Сохраняем изменения. Теперь можно запустить наш Агент при помощи файла agent_1.bat
ODI Start Standalone Agent
Как мы видим, наш агент успешно стартовал. Теперь возвращается в ODI Studio и проверяем соединение с агентом, нажав кнопку Test:
ODI Agent Test

Логический Агент

Логический Агент связан с физическим Агентом через определенный контекст ODI. Разработчик приложения интеграции данных работает с логическим Агентом, его, как правило, не интересуют подробности физической передачи данных. Используя логический агент такой разработчик знает лишь то, что требуемые данные будут загружены или выгружены, а каким образом, для него это не очень важно. Поэтому нам необходимо создать новый логический Агент и связать его с физическим. Для этого в вкладке Topology навигатора открываем раздел Logical Architecture
ODI New Logical Agent
Далее вводим имя агента и чрез требуемый контекст связываем его с существующим физическим агентом и сохраняем данные:
ODI Logical Agent parameters
На этом можно считать, что девелоперский стенд полностью установлен и настроен для разработки проектов интеграции данных. Следующие статьи будут посвящены непосредственно практике разработки таких проектов.
www.foxbase.ru




Смотрите также:



Оставьте свой комментарий

Вы должны быть авторизированны, чтобы оставить комментарий.