О работе в Oracle Data Integrator (ODI) и других захватывающих вещах из мира BI.
воскресенье, 21 ноября 2010 г.
Страница документации по Oracle Data Integrator 10.1.3.6
Старый текст заметки.
Страница с последней версией документации по ODI 10.1.3.6. Состоит из ссылок на документы по различным аспектам ODI. Примерно такая же документация (как и заглавная страница) включается в инсталляционный архив, именно с загрузки этой страницы я и начинал процесс инсталляции ODI.
Странно, что скачивать инсталляцию приходится версии 10.1.3.5, а документация уже по 10.1.3.6.
пятница, 19 ноября 2010 г.
Что такое интерфейс ODI?
- одна или более таблиц источников и их связи;
- одна таблица приемник данных;
- шаблон(ы) преобразования данных из источников в целевую таблицу.
В документации рекомендуют создавать интерфейс согласно такому порядку:
среда, 17 ноября 2010 г.
ODI и Windows 7.
Сегодня хочу рассказать о некоторых особенностях работы клиентских программ Oracle Data Integrator в ОС Windows 7.
1. Инсталляция клиентской части в Windows 7.
Инсталлятор ODI проверяет версию операционной системы перед инсталляцией, и, не поддерживая указанную ОС, не дает продолжить инсталляцию. Один из вариантов решения этой проблемы описан здесь, и заключается он в том, чтобы запускать файл инсталляции setup.bat с указанием опции -ignoresysprereqs.
понедельник, 15 ноября 2010 г.
Как разрабатывать свои модули знаний в ODI.
пятница, 12 ноября 2010 г.
Как работает СУБД глазами программиста.
Обнаружил недавно интересные заметки о том, как работает большинство реляционных СУБД, с точки зрения программирования этих самых систем управления.
В пяти частях. Некоторые описываемые моменты я попытался выделить.
Часть 1. Оптимизация внутри СУБД - ключевой момент.
Часть 2. Запрос это некое дерево операций (проксирующие, контейнерные, смешанные операции).
Часть 3. Перестроение плана запроса в процессе его выполнения.
Часть 4. Почему нет свободных колоночных реляционных СУБД.
Часть 5. Индексы.
среда, 10 ноября 2010 г.
Небольшое описание инсталляции ODI на MS SQL Server.
Попытался описать процесс инсталляции ODI на Microsoft SQL Server 2008. Это описание доступно по ссылке, а в блоге на него будет ссылка с верхнего перечня страниц блога. Там где Поиск и т.п.
Пока описано только до момента запуска Дизайнера, т.е. инсталляция самого ODI, инсталляция SQL сервера, дополнительно необходимое ПО и перечень драйверов, а также создание мастер репозитория и рабочего репозитория.
Планирую эту страницу дополнять в будущем.
понедельник, 8 ноября 2010 г.
Что такое модули знаний ODI.
Что такое модуль знаний?
Модуль знаний - это шаблон построения подпрограммы. Каждый модуль знаний, как и процедура, состоит из одного или более шагов. Каждый шаг модуля знаний может запускать команды определенной технологии, из тех технологий, которые поддерживает ODI.
суббота, 6 ноября 2010 г.
Создание временных таблиц процедурами ODI.
Хочу рассказать о подходе, который я, как и многие мои коллеги, используют, когда необходимо создать временную таблицу, которая будет использоваться в загрузке данных.
В отличие от описанного здесь алгоритма создания временной таблицы через интерфейс, я предпочитаю использовать для этих целей процедуры Oracle Data Integrator.
четверг, 4 ноября 2010 г.
Пиктограммы в ODI.
Один мой коллега заинтересовался видом пиктограмм, которые используются в ODI для интерфейсов проекта. Он прислал вот такой снимок экрана, который я немного увеличил:
вторник, 2 ноября 2010 г.
Экспорт сценариев из ODI.
Как видно на приведенном снимке экрана, при выборе команды "экспортировать все сценарии (Export All Scenarios)" на папке или всем проекте, появится диалог с выбором тех типов объектов, сценарии которых необходимо экспортировать. При этом, также, можно указать кодировку, в которой будут сохранены файлы со сценариями:
понедельник, 1 ноября 2010 г.
2010-11-01.
ODI 11g - Часть 6/11 - операции Union, Minus, Intesect.
11g Oracle Data Integrator – Part 6/11g – Union , Minus, Intersect
Как организовать загрузку данных из нескольких источников с использованием операторов INTERSECT, MINUS, UNION в одном интерфейсе.
Дата публикации: 2010-11-12, Комментариев: 3
ODI 11g - Часть 7/11 - Создание репозиториев.
11g Oracle Data Integrator – Part 7/11g – SUNOPSIS MEMORY ENGINE
Использование SUNOPSIS MEMORY ENGINE для хранения промежуточных расчетов не в таблицах СУБД, а в памяти. Обновление переменных из таблиц HyperSQL, использование Jython, Java кода или использование HyperSQL для промежуточных данных при работе интерфейса. Теоретически, использование СУБД, которая полностью помещается в памяти может помочь в ситуации необходимости организовать загрузку сверхбольшого количества маленьких таблиц.
Дата публикации: 2010-11-16, Комментариев: 0
воскресенье, 31 октября 2010 г.
Переносим объект из одного проекта ODI в другой.
пятница, 29 октября 2010 г.
Дуплицируем папку ODI или весь проект.
А что произойдет, если сделать дубликат папки ODI или даже всего проекта? В зависимости от количества объектов в папке или в проекте это может занять разное время (иногда достаточно большое).
среда, 27 октября 2010 г.
Создание временной таблицы через ODI интерфейс.
Я, до начала перевода статьи, так никогда сам не делал, но, возможно, это кому-нибудь будет полезно.
Как создать временную таблицу в интерфейсе ODI.
Создайте новый интерфейс, задайте его имя, выберите контекст оптимизации и выберите подходящую схему для установленной опции Стейджинговая область отлична от целевой области (Staging Area Different From Target).
понедельник, 25 октября 2010 г.
Быстрый и легкий путь создания интерфейсов в ODI.
1. Определите папку с моделью, в которой уже есть модели целевых таблиц. По нажатию правой кнопки мыши на модели выберите команду генерации загрузочных интерфейсов (Generate Interface In)
суббота, 23 октября 2010 г.
Поведение переменных в процедурах и интерфейсах ODI.
четверг, 21 октября 2010 г.
Быстрое редактирование параметров запуска сценария ODI.
Рассмотрим пример запуска сценария из проверочного пакета.
Общие свойства объекта OdiStartScen:
вторник, 19 октября 2010 г.
Изучаем поведение переменных ODI.
Недавно встретилась ситуация, когда в пакете была такая последовательность для одной переменной: Декларация -> Обновление -> Декларация.
И я решил проверить, это просто ошибка, или в этом есть какой-то смысл?
воскресенье, 17 октября 2010 г.
Удаление временных $ таблиц.
Задачи по обработке данных, при которых используются стандартные модули знаний (knowledge modules) ODI предполагают создание временных таблиц и их использование в процессе ETL преобразований. Например, модуль загрузки данных из файла в таблицу, создаст в БД временную таблицу С$_MY_FILE_DATA, загрузит "сырые" данные туда, и уже после этого перенесет данные в таблицу MY_FILE_DATA.
суббота, 16 октября 2010 г.
Организационное.
Немного организационных новостей. В блоге появилась панель ссылок на страницы блога. Панель сейчас располагается в верхней части блога. Первая страница - информация о блоге и о том, как со мной связаться. Пожалуйста, если вас интересует какая-то информация об ODI и я смогу в этом помочь - обращайтесь.
Там же находится и дисклеймер.
Вторая ссылка - на страницу поиска. Поиск по статьям этого блога и другим сайтам, связанным с тематикой Oracle Data Integrator. Поиск все еще в процессе настройки, но по данному блогу уже ищет.
Ну и подписывайтесь на обновления через RSS. До конца года постов в блоге хватит.
пятница, 15 октября 2010 г.
Машины хранилищ данных.
Результаты исследований и разработок позволили в начале 1990-х годов сделать такой вывод: будущее принадлежит параллельным системам для организации баз данных, создаваемым на базе серийных процессоров, памяти и дисков. Каждый такой процессор может работать только со своей областью базы данных и обмениваться сообщениями с другими процессорами через сетевое соединение или общую память. Это позволяет разбивать большие таблицы на меньшие и проводить их обработку параллельно.
И далее полная версия статьи Александра Александрова опубликованная в Открытых Системах.четверг, 14 октября 2010 г.
Отправляем письмо из ODI (улучшенная версия).
Но хотелось бы, все же, использовать для этой цели пакет, а вернее, сгенерированный из пакета сценарий.
вторник, 12 октября 2010 г.
Как присвоить значение или сравнить 2 переменные ODI.
В этом пакете используется две переменные, для первой переменной устанавливается значение 10, для второй переменной попробуем установить значение, равное значению первой переменной. Затем обе переменных отобразим с помощью raise exception метода:
Как видно, значение второй переменной - строка #Variable1, а вовсе не строка 10. Для того, чтобы в пакете присвоить значение одной переменной другой переменной, необходимо указывать полное наименование, включая проект, или ключевое слово Global для глобальных переменных.
Тот же подход необходимо использовать если необходимо сравнить значение двух переменных:
воскресенье, 10 октября 2010 г.
Отправляем письмо из ODI.
Этот компонент позволяет выслать письмо на заданные адреса, указав при этом адрес почтового сервера, имя, от которого отправляется письмо, тему и тело письма, приложив, при необходимости, один или несколько файлов в аттачмент.
Использование этого компонента в случаях отладки ETL процессов позволяет ничего дальше на этот счет не придумывать. Разработчик вставляет отправку письма себе, сам формирует тело письма, заголовок и, возможно, прикладывает файл.
Но, в случае, если необходимо отправлять почту для целей мониторинга процессов загрузки, например, сообщать на электронную почту о падениях некоторых сценариев или о других нестандартных ситуациях, намного удобнее написать отдельный пакет, который будет заниматься отправкой письма.
пятница, 8 октября 2010 г.
Удаление потерянных данных в SNP_EXP_TXT.
Сегодня я хочу опубликовать перевод статьи, посвященной удалению данных из одной из таблиц репозитория ODI. Почему возникла такая мысль и какие именно данные будут удаляться читайте ниже.
Привет народ. Есть небольшой "баг" в ODI, который заключается в том, что не очищается таблица SNP_EXP_TXT, когда удаляется "родительская" запись.
Так происходит потому, что в модели репозитория нет внешнего ключа между SNP_EXP_TXT и ее несколькими родительскими таблицами, именно потому, что таких таблиц несколько.
среда, 6 октября 2010 г.
Устанавливаем значения переменных для сценария.
Итак, если мы выберем некий сценарий, сгенерированный из интерфейса, пакета или процедуры, мы увидим, что для сценария есть три подчиненных ветки в дереве объектов:
понедельник, 4 октября 2010 г.
Создаем и используем функцию PL/SQL из ODI.
Зачем именно в ETL коде? Это, как я уже указывал, уменьшает объем передаваемого на деплой кода, и, самое главное, это удобнее при разработке.
Ведь после каждого изменения таблицы, которая используется в процедуре или функции данная процедура, а то и весь модуль, в котором она находится, становится невалидной в СУБД Oracle. А пересоздание процедуры при каждом запуске сценария позволяет не затрагивать своими экспериментами других пользователей.
суббота, 2 октября 2010 г.
Один сценарий ODI - одна сессия в СУБД Oracle.
Если исходить с точки зрения того, как механизм использования модулей реализован в СУБД Oracle, то получалось, что, в случае выделения каждому сценарию своей собственной сессии, для каждого сценария мы будем иметь отдельную область памяти, в которую конкретизируется (instantiated) модуль, и, таким образом, в каждом модуле мы получим свое значение переменной.
пятница, 1 октября 2010 г.
Описание архитектуры Oracle Data Integrator.
Архитектура Oracle Data Integrator: краткий технический обзор
2010-10-01.
Менеджер Безопасности - Концепция и использование.
Security Module – Main concepts and use
Для чего необходим и как использовать Менеджер Безопасности (Security Manager) ODI. Как назначить права на разные объекты разным пользователям или разным ролям.
Дата публикации: 2010-10-06, Комментариев: 2
Jython в ODI для начинающих.
Jython’s Beginner Guide for ODI
Большое количество примеров использования Jython для работы со строками, файлами, массивами, командами ОС, SQL скриптами и т.п. Есть ссылки на документацию по Jython.
Дата публикации: 2010-10-15, Комментариев: 20
Послать результат SQL по почте.
Send SQL by Email
Отправка результатов выполнения SQL запроса в виде текста письма с помощью одной процедуры из двух шагов.
Дата публикации: 2010-10-19, Комментариев: 5
Преобразование временного ODI интерфейса в обычный.
ODI snippets: Converting a temp interface to a regular interface
Три простых шага, которые необходимо сделать чтобы преобразовать интерфейс заполнения временной таблицы (т.н. Желтый интерфейс) в постоянный интерфейс для заполнения целевой таблицы в БД.
Дата публикации: 2010-10-31, Комментариев: 0
ODI в примерах от Oracle.
ODI 11g: Oracle by Example
Список занятий, выложенных в разделе Oracle by Example по Oracle Data Integrator.
Дата публикации: 2010-10-31, Комментариев: 0
ODI 11g выделенный агент как Windows сервис.
ODI 11g standalone agent as a windows service
Описание проблемы, согласно которой установить агент ODI 11g как сервисную службу Windows можно только если у вас есть лицензия на Oracle Process Manager and Notification Server. Один из возможных путей решения данной проблемы - использование другой Java обертки - Tanuki Java Service Wrapper.
Дата публикации: 2010-10-19, Комментариев: 0
ODI: Timestamp с учетом локального времени и переходами на зимнее/летнее время.
Oracle Data Integrator (ODI): Timestamp with local timezone and daylights saving time
Описаны особенности (на примерах) настройки ODI для работы с типом данных timestamp с учетом временных зон.
Дата публикации: 2010-10-16, Комментариев: 2
четверг, 30 сентября 2010 г.
Как использовать PL/SQL процедуры и функции в ODI.
В одном из пакетов, которые я разрабатывал, используется сохраненная процедура СУБД, которая сканирует таблицу в БД и возвращает некоторое значение. Было бы хорошо избавиться от нее, чтобы пакет был самодостаточным. В этом случае и отдавать на промышленную эксплуатацию пришлось бы всего один сценарий, и менять алгоритм процедуры можно было бы без администратора СУБД.
Итак, перевод:
вторник, 28 сентября 2010 г.
Из чего состоит проект ODI.
Составляющие проекта Oracle Data Integrator.
Следующие компоненты входят в дерево проекта ODI:
- Папка (Folder)
Объекты ODI могут находиться в папках или подпапках. - Пакет (Package)
Пакет это наибольший возможный выполняемый объект ODI. Пакет состоит из последовательности шагов огранизованных в виде цепочки выполнения.
Новые ссылки о работе в Oracle Data Integrator.
Нашел блог, где публиковалась информация "из области Data Warehouse, Business Intelligence, OLAP, ETL на платформе Oracle". К сожалению, блог не обновляется с марта 2010 года.
Привожу небольшую подборку интересного из раздела посвященного ETL:
- Некоторые особенности реверса таблиц с Identity колонками из MS SQL.
- Исправление репозитория ODI для реверса таблиц из MS SQL 2005.
- Использует ли докачку добавленный в версии ODI 10.1.3.5 компонент FtpGet?
- Как импортировать дата сервер в ODI.
- Короткое описание версии 10.1.3.4.0 ODI.
- Проблема при реверсе полей текстового файла решается отключением автоматической блокировки объектов ODI.
- Подключаем ODI к Microsoft SQL Server 2005.
- Создание репозитория Oracle Data Integrator.
понедельник, 27 сентября 2010 г.
Поиск одинаковых JOIN-ов в ODI.
В этом случае, чтобы внести исправления во все интерфейсы, которые используют эту таблицу измерений достаточно пойти в модель, найти нужную нам таблицу, и посмотреть, в каких интерфейсах она используется как источник:
четверг, 23 сентября 2010 г.
Узнаем свойства переменной через таблицу SNP_VAR.
SELECT DISTINCT
CASE
WHEN SNP_VAR.I_PROJECT IS NULL
THEN 'GLOBAL'
ELSE SNP_PROJECT.PROJECT_NAME
END AS PROJECT_NAME,
SNP_VAR.VAR_NAME AS VARIABLE_NAME,
CASE
WHEN SNP_VAR.VAR_DATATYPE='A' THEN 'ALPHANUMERIC'
WHEN SNP_VAR.VAR_DATATYPE='N' THEN 'NUMERIC'
WHEN SNP_VAR.VAR_DATATYPE='D' THEN 'DATE'
ELSE 'TEXT' END AS DATATYPE,
CASE
WHEN SNP_VAR.IND_STORE = 'S' THEN 'Non persistent'
WHEN SNP_VAR.IND_STORE = 'H' THEN 'Historize'
WHEN SNP_VAR.IND_STORE = 'L' THEN 'Last value'
ELSE '?' END AS ACTION,
CASE WHEN SNP_VAR.VAR_DATATYPE='T' THEN V_TXT.TXT
ELSE SNP_VAR.DEF_v END AS DEFAULT_VALUE,
SNP_VAR.lschema_name AS VARIABLE_QUERY_SCHEMA,
SNP_TXT.TXT AS VARIABLE_QUERY,
S_TXT.TXT AS DESCRIPTION
FROM SNP_VAR
LEFT OUTER JOIN SNP_PROJECT ON SNP_VAR.I_PROJECT=SNP_PROJECT.I_PROJECT
LEFT OUTER JOIN SNP_TXT ON SNP_TXT.I_TXT=SNP_VAR.I_TXT_VAR_IN
LEFT OUTER JOIN SNP_TXT S_TXT ON S_TXT.I_TXT=SNP_VAR.I_TXT_VAR
LEFT OUTER JOIN SNP_TXT V_TXT ON V_TXT.I_TXT=SNP_VAR.i_txt_var_val_txt
ORDER BY project_name
Ну и еще один запрос, показывающий значения исторических переменных. Хотя, до конца, я в нем пока не уверен.
SELECT
d.Var_Name AS "NAME",
d.FIRST_DATE AS "DATE",
CONTEXT_CODE AS "CONTEXT",
CASE
WHEN v.VAR_DATATYPE='A' THEN d.VAR_V
WHEN v.VAR_DATATYPE='N' THEN to_char(d.VAR_N)
WHEN v.VAR_DATATYPE='D' THEN to_char(d.VAR_D)
ELSE 'RUN: select TXT from snp_exp_txt where I_TXT = ' || to_char(d.i_txt_var_t) END AS "VALUE"
FROM snp_var v LEFT OUTER JOIN snp_project p ON v.I_PROJECT=p.I_PROJECT,
SNP_VAR_DATA d
WHERE d.var_name = UPPER(nvl(p.PROJECT_NAME, 'GLOBAL')) || '.' || v.Var_Name
См. также: структура таблиц рабочего репозитория ODI.
среда, 22 сентября 2010 г.
IBM покупает Netezza.
http://ko.com.ua/node/52423
Обучающее видео по Oracle Data Integrator.
http://www.business-intelligence-quotient.com/?p=933
Язык - английский.
вторник, 21 сентября 2010 г.
Скрытые переменные сценария починили.
Значит, это все же была ошибка.
воскресенье, 19 сентября 2010 г.
Диаграмма выполнения пакета в Oracle Data Integrator.
С самого начала работы с ODI я настойчиво упорядочивал пакеты, стараясь делать диаграмму "прямой и стройной". И делал это всегда вручную. Обнаружив описываемую ниже функциональность я попробовал ее использовать, разочаровался, и решил вообще о ней не упоминать. Но, спустя время, понял, что в 80% случаев она может быть полезна для разработчика.
Что я имею ввиду? Обычно диаграмма пакета это графическое отображение объектов пакета в виде пиктограмм и связей между ними, в виде стрелок. Направление стрелки показывает порядок выполнения действий над объектами пакета, разные цвета этих стрелок обозначают переход выполнения в случае успешного и неуспешного завершения текущего шага.
Прямая и стройная диаграмма это расположение объектов пакета на одной прямой. С этой задачей может справиться специальная функция Дизайнера, которая называется Reorganize:
К сожалению, эта возможность хорошо работает только для последовательных запусков переменных, процедур и интерфейсов в пакете. Если попытаться воспользоваться этой функцией для чего-то более сложного, с условными переходами или циклами - получится совершенно запутанный клубок из объектов и переходов между ними.
Вот как выглядит упорядоченный вручную пакет:
Вот что происходит после использования функции Reorganize:
Как видно, первый вариант был более удобочитаемым. С другой стороны это, возможно, и правильно. Выстраивая диаграмму пакета вручную, разработчик имеет возможность еще раз проверить алгоритм работы пакета основываясь на его визуальном представлении, практически, имея перед глазами блок-схему программы. С этой точки зрения неудобство заключается только в отсутствии возможности привязывать объекты диаграммы к направляющим или сетке. Остается только пользоваться возможностью взаимного упорядочивания объектов по вертикали или горизонтали:
Update:
Подробнее о диаграмме пакета как схеме выполнения загрузки (workflow)
пятница, 17 сентября 2010 г.
Дизайнер ODI: советы.
Совет 1. Именование объектов.
Начнем с совсем простого, т.е. с того, как называть свои пакеты, интерфейсы и функции. Хорошей практикой считается подход, когда интерфейс называется так же, как и целевая таблица, которая этим интерфесом заполняется. По названию процедуры должно быть понятно, что она и примерно как делает. Пакет именуется по тем же принципам.
Совсем недавно я обнаружил, что наименование сценария для объекта автоматически генерируется в верхнем регистре:
четверг, 16 сентября 2010 г.
Что такое Oracle Data Integrator (ODI)?
В моей работе ODI - это программа (набор из нескольких программ, сервер приложений), которая позволяет копировать данные из таблиц разных СУБД разных производителей, складывать их в нужную БД (Хранилище Данных), и, после этого, производить над этими данными некие преобразования. Чтобы, в конце этого процесса, получить нужные для пользователей отчеты.
Набор программ ODI (не полный)
вторник, 14 сентября 2010 г.
ODI лучше OWB?
Oracle Data Integrator и Oracle Warehouse Builder 11 тезисов сравнения.
Запись довольно старая, но все же.
Параллельное выполнение интерфейсов – новое решение.
Описание проблемы:
Oracle Data Integrator использует имя целевой таблицы как базу для названия временных таблиц ($I, $E, C$), и, поэтому, если больше одного интерфеса, загружающего одну и ту же таблицу, работают одновременно, операции создания, добавления строк или удаления этих временных таблиц могут выполняться вразброд, ломая таким образом весь процесс загрузки.
Решение:
воскресенье, 12 сентября 2010 г.
Добавляем keywords-ы к дочерним сессиям.
Фактически, 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.
Хорошо, если у разработчика или администратора ETL процесса есть доступ на чтение из таблиц репозитория ODI.
вторник, 7 сентября 2010 г.
Используем кнопку Back в Операторе.
при ежедневной работе. Как дополнение к вот этим постам (часть 1, часть 2) с советами по работе в этом приложении.
Недавно мне понадобилось проверить время работы некоторого набора сессий. Как часть ежедневного расчета данных в ХД эти сессии запускались из одного главного сценария.
Порядок работы после запуска Оператора был следующим:
1. Находим в закладках Hierarchical Sessions лог нашего главного процесса загрузки и выбираем его дочерние сессии (Child Session). Нажимаем на значок + и раскрываем список дочерних сессий.
пятница, 3 сентября 2010 г.
Один сценарий для ежедневного и выборочного расчета.
Например, каждый день могут расчитываться ежедневные отчеты, соответственно, в сценариях загрузки таблиц отчетов должен присутствовать параметр даты. Если загрузка происходит в штатном режиме, в ETL пакете используется некая переменная, назовем ее #Loading_Date, которая обновляется (refresh) из параметров текущей загрузки (из некоторой таблицы в БД) и на эту дату производится расчет.
Если есть необходимость пересчитать отчет за произвольную дату, можно поступить двумя путями.
среда, 1 сентября 2010 г.
Что такое переменная в Oracle Data Integrator.
Итак, что пишет нам документация, а именно, файл 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



















