воскресенье, 12 сентября 2010 г.

Добавляем keywords-ы к дочерним сессиям.

Процесс загрузки данных в ХД можно описывать с разных сторон. В данной статье я хотел бы рассмотреть две такие характеристики, как количество источников данных и периодичность. Рассмотреть не с точки зрения общих принципов построения ХД, а с точки зрения того, как, используя Oracle Data Integrator как инструмент ETL, немного упростить работу по разработке и сопровождению процесса ежедневной загрузки данных в хранилище данных.

Фактически, keywords-ы похожи на облако тэгов, или ярлыков, используя которые можно выбирать из всего множества запущенных сессий только определенные.

Для добавления тэгов к запускаемым сценариям необходимо выполнить следующие шаги:

пятница, 10 сентября 2010 г.

Oracle Data Integrator 11g доступен для скачивания.

Всем привет.
Короткое сообщение, Oracle на своем сайте выложил архив новой версии Oracle Data Integrator. Размер - 1.74Gb.
Если я не ошибаюсь, вчера его там еще не было.
Вчера же, поздно вечером, Oracle проводил по новому ODI вебкаст.

Из доступного на сайте pdf файла с презентацией новых возможностей 11 версии я, после беглого просмотра, выбрал только одну - теперь можно немедленно останавливать выполнение сессий, а не просто не выполнять следующий после текущей команды шаг. Т.е. теперь зависшие SQL запросы можно будет обрывать прямо из клиента, что не может не радовать.

Ссылка: http://www.oracle.com/technetwork/middleware/data-integrator/overview/index.html, дальше на страницу Download.

Собираюсь скачать.

среда, 8 сентября 2010 г.

Как узнать время выполнения дочерних сессий из таблицы SNP_SESSION.

Все - таки, при достаточно большом количестве сессий, которые необходимо проанализировать (проверить время выполнения, например), пользоваться клиентским приложением, даже с использованием кнопки Back, достаточно затратно по времени.

Хорошо, если у разработчика или администратора ETL процесса есть доступ на чтение из таблиц репозитория ODI.

вторник, 7 сентября 2010 г.

Используем кнопку Back в Операторе.

Небольшая заметка о удобстве использования кнопки Back, которая имеет вот такое изображение в Операторе:

при ежедневной работе. Как дополнение к вот этим постам (часть 1, часть 2) с советами по работе в этом приложении.

Недавно мне понадобилось проверить время работы некоторого набора сессий. Как часть ежедневного расчета данных в ХД эти сессии запускались из одного главного сценария.

Порядок работы после запуска Оператора был следующим:
1. Находим в закладках Hierarchical Sessions лог нашего главного процесса загрузки и выбираем его дочерние сессии (Child Session). Нажимаем на значок + и раскрываем список дочерних сессий.

пятница, 3 сентября 2010 г.

Один сценарий для ежедневного и выборочного расчета.

В моей практике ODI используется для ежедневной загрузки и преобразования данных в Хранилище Данных. Обычно такое преобразование имеет одним из параметров дату загрузки.

Например, каждый день могут расчитываться ежедневные отчеты, соответственно, в сценариях загрузки таблиц отчетов должен присутствовать параметр даты. Если загрузка происходит в штатном режиме, в ETL пакете используется некая переменная, назовем ее #Loading_Date, которая обновляется (refresh) из параметров текущей загрузки (из некоторой таблицы в БД) и на эту дату производится расчет.

Если есть необходимость пересчитать отчет за произвольную дату, можно поступить двумя путями.

среда, 1 сентября 2010 г.

Что такое переменная в Oracle Data Integrator.

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

Итак, что пишет нам документация, а именно, файл snps_refmanual.pdf, о переменных.

Переменные могут быть использованы в любых выражениях (SQL и других), также как и в метаданных. Значение переменная получает во время выполнения той команды, в которой она используется, когда эту команду выполняет агент. Свойства переменной отображаются в закладках Definition и Refresh в Дизайнере, глобальные переменные располагаются на том же уровне, где и проекты, проектные (локальные) переменные - внутри дерева проекта.

2010-09-01.


Первый год из многих. Спасибо друзья!
First year of many…. Thank you Friends!
-
Дата публикации: 2010-09-01, Комментариев: 1


ODI 11g - Часть 4/11 - Обновление с версии 10.
11g Oracle Data Integrator – Part 4/11g – Upgrading from 10g
Как сделать апгрейд с 10 версии ODI на версию 11g с помощью клонирования репозиториев и использования утилиты Oracle Fusion Middleware Upgrade Assistant.
Дата публикации: 2010-09-07, Комментариев: 16


Секреты ODI - Конструктор моделей от Крейга Стюарта.
Using one of ODI’s lesser-known secrets: the Common Format Designer (CFD) – by Craig Stewart
Использование Конструктора Моделей (Common Format Designer (CFD)) от Крейга Стюарта.
Дата публикации: 2010-09-10, Комментариев: 5


ODI 11g - Часть 5/11 - odiConsole, новый Metadata Navigator.
11g Oracle Data Integrator – Part 5/11g – odiConsole, the new Metada Navigator
Пошаговая инструкция как настроить odiconsole для работы в Oracle Weblogic Server и как установить внешнего агента для запуска сценариев из консоли.
Дата публикации: 2010-09-15, Комментариев: 3


ODI 11g - независимые агенты и использование агента как сервиса.
11g Oracle Data Integrator – Standalone Agent but, and about the Windows Service???
Особенности настройки агентов ODI, в том числе настройка работы агентов как сервисов Windows.
Дата публикации: 2010-09-21, Комментариев: 5


Расположение файлов драйверов в ODI 11g.
Drivers Location in ODI 11g
Где располагаются JDBC драйверы ODI на Unix и Windows серверах. В комментариях также затрагивается тема нахождения драйверов в Windows 7.
Дата публикации: 2010-09-29, Комментариев: 14


Подзапросы и производные таблицы в ODI 11g.
Subselect, derived tables, and subqueries in ODI 11G
Показан механизм, позволяющий использовать интерфейс для заполнения временной таблицы в другом интерфейсе в качестве производной (derived) таблицы, при этом запрос, заполняющий производную таблицу автоматически трансформируется в подзапрос в основном интерфейсе.
Дата публикации: 2010-09-09, Комментариев: 2


Примеры кода для ODI 11g SDK.
Oracle Data Integrator (ODI) 11g SDK code samples
Ссылки на примеры кода для ODI 11g SDK на сайте Oracle, а также ссылки на описание Java API на том же сайте.
Дата публикации: 2010-09-11, Комментариев: 1

четверг, 26 августа 2010 г.

Как узнать значение переменной ODI во время выполнения?

Как известно, в ETL процедурах ODI можно использовать переменные. Переменные эти различаются не только по типу возвращаемого результата, но и по тому, каким образом переменная (точнее, ее значение) взаимодействует с процессом ETL преобразований. По этому поводу я планирую написать отдельный пост, а пока хочу просто отметить, что переменные всех типов в ODI хранятся в коде ETL преобразования в виде строковой ссылки вида #Project.Variable.

Если нам необходимо узнать значение переменной, мы можем найти тот Select который обновляет значение переменной, выполнить его, и узнать значение. Или найти переменную в Дизайнере и посмотреть ее значение по умолчанию. Намного удобнее было бы получать значение переменной прямо из приложения Оператор.

Итак, перед вами два возможных подхода к получению значения переменной в логе выполнения ETL преобразования.

суббота, 21 августа 2010 г.

Оператор ODI: советы по работе, часть 2.

Продолжая систематизировать приемы работы в приложении Оператор приготовил следующие примеры:

Удаление нескольких логов

Для удаления нескольких логов выполнения необходимо их выделить. Выделение производится по тому же принципу, что и в проводнике Windows. Т.е. с зажатой клавишей Ctrl выделяем / снимаем выделение с отдельных логов, с помощью клавиши Shift выделяем последовательность из нескольких логов.

вторник, 10 августа 2010 г.

Оператор ODI: советы по работе, часть 1.

Небольшой перечень советов и подсказок при работе с приложением Оператор сервера приложений Oracle Data Integrator.

Приложение Оператор используется, в основном, для просмотра логов выполнения сценариев. Есть возможность просматривать как иерархическое выполнение сценариев, где отображается и главный сценарий и его дочерние сессии. так и просто весь список выполнявшихся сценариев, вне зависимости от иерархий.