суббота, 15 августа 2015 г.

ODI руководство по производительности.

Относительно новое, уже включает версию Oracle Data Integrator 12c. Требует знания ODI, так как при относительно сжатом описании охватывает большинство вариантов увеличения производительности операций, выполняемых данным инструментом.
От производителя.

суббота, 13 июня 2015 г.

Аналитика не для пользователей.

Приветствую.

Для аналитиков компаний, в противовес обычным сотрудникам, получающим уже готовые отчеты, есть программные продукты и помимо Microsoft Excel. Заметка на Хабре - 5 инструментов в помощь аналитику, возможно, поможет подобрать необходимый инструмент быстрее, чем за полгода.

воскресенье, 22 марта 2015 г.

Человеческий фактор.

О пользе профессионализма и грамотности.

Результат: сервер с фантастическими характеристиками, на котором считаются бесполезные кубы, чтобы в веб-интерфейсе иметь возможность смотреть на диаграммы.


вторник, 17 марта 2015 г.

Конвертация кода Informatica -> ODI.

Вдруг кому-то понадобится, знайте, что уже есть утилиты по преобразованию маппингов, воркфлоу, маплетов Информатики в соответствующие объекты Oracle Data Integrator. Судя по сайту - за деньги.

Ссылка: informaticatoodi.jadeglobal.com/

понедельник, 23 февраля 2015 г.

Дайджест ODI публикаций 2013, Квартал 4.

Новая версия Oracle Data Integrator 12c: Часть 1.
Oracle Data Integrator 12c release : Part 1
Маппинги и повторно используемые маппинги вместо пакетов и интерфейсов, Отладчик, Миграция с OWB - краткий обзор новых возможностей ODI. Есть перевод.
Дата публикации: 2013-10-17, Комментариев: 23


ODI 12c - Инсталляция Студии.
ODI 12c - Installing ODI Studio
Краткое замечание о том, что для инсталляции ODI Студии необходимо выбирать тип инсталляции - Enterprise.
Дата публикации: 2013-10-17, Комментариев: 0


Обновление ODI 11.1.1.7 на новую версию 12c.
Upgrading ODI 11.1.1.7 repository to 12c:
История в картинках, как произвести обновление ODI. В комментариях затрагиваются и другие детали апгрейда.
Дата публикации: 2013-10-26, Комментариев: 19


понедельник, 16 февраля 2015 г.

Дайджест ODI публикаций 2013, Квартал 3.

Давно не обрабатывал публикации, а их много...

Сколько нужно мастер репозиториев для ODI?
How Many ODI Master Repositories Should We Have?
Статья описывает возможные варианты архитектуры ODI при работе в корпоративной среде, в частности, использование нескольких мастер репозиториев для сред разработки, тестирование и промышленной эксплуатации.
Дата публикации: 2013-07-01, Комментариев: 1


ODI - создание репозитория в подключаемой БД Oracle 12c.
ODI - Creating a Repository in a 12c Pluggable Database
Пример подключения к БД с использованием имени сервиса работающей БД, а не ее SID имени.
Дата публикации: 2013-07-02, Комментариев: 0

понедельник, 9 февраля 2015 г.

Чтение.

Приветствую.

Сегодня две ссылки, которые вызвали интерес.

Первая - оптимизация запросов в СУБД Oracle, которая заключается в исключении тех таблиц из запроса, соединение с которыми не повлияет на результат. Подробная заметка на Хабре - Oracle Join Elimination.

Автор справедливо отмечает, что описываемые запросы обычно являются результатом работы неких инструментов. И совсем недавно я сам наблюдал ситуацию, когда на достаточно давно идущем проекте по загрузке ХД, некоторые интерфейсы содержат как раз такой тип соединения двух таблиц, при котором ничего из соединяемой таблицы не отбирается в целевую таблицу, а соединение идет по условию outer join.

Проект старый, идет давно, работали над этим интерфейсом как минимум пятеро ODI разработчиков и несколько разных аналитиков, вот и потерялся смысл такого соединения.

Вторая заметка касается построения катастрофоустойчивого ETL, описана здесь - Проект Dual ETL или как мы строили Disaster Recovery для Greenplum

пятница, 23 января 2015 г.

ODI - лучшие практики.

Попался на глаза обстоятельный ответ на вопрос о лучших практиках Oracle Data Integrator, который дал Jérôme Françoisse в одной из групп ЛинкедИна.

Возможно, будет кому-то инетересен, поэтому я решил его перевести.



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

Предупреждение сказано, теперь ссылки:

среда, 14 января 2015 г.

Календарь для хранилища.

Создание календаря для Хранилища Данных. Или Date dimension. Или измерения времени.

В процессе работы понадобилось найти алгоритмы создания таблицы с перечнем дат, в котором бы присутствовала информация о днях недели, начале и конце месяца и другой календарной информации, используемой при загрузке данных в ХД (в основном в датамарты) и при построении отчетности для конечных пользователей.

Результаты поисков, все что нашлось поиском по интернету и сообщениям наших коллег с SQL.ru (спасибо им) представлены ниже.

Наибольшее количество ссылок применимо для MS SQL Server:

Календарь для хранилища данных на основе MS SQL.

DATE AND TIME DIMENSION TEMPLATE.

MS SQL запрос, формирующий список дат (порадовал наличием украинских и белорусских наименований для дней и сезонов).

SSAS - пример измерения времени.

Вьюха для календаря (с рекурсивным запросом).


Элегантный скрипт для БД PostgreSQL

PostgreSQL: Auto generate a sample Dataset.


Пример для Oracle DB.

Пример создания календаря (time dimension table)

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

CREATING A CALENDAR TABLE.

Второй пример для Вертики, использующий неизвестный мне ранее механизм TIMESERIES
Vertica - Creating a calendar table


И напоследок Teradata. Эта СУБД имеет стандартный календарь в виде представления SYS_CALENDAR.CALENDAR, хранящее даты с 1 января 1900 по 31 декабря 2100 года. По одной записи на каждый день.

System Calendar - SYS_CALENDAR.CALENDAR

Вот такой вот первый в этом году пост. С Новым Годом!


четверг, 18 декабря 2014 г.

Ускоряем экстракт при помощи ORDERBY.

Всем привет.

На хабре небольшая заметка о случаях, при которых передача данных по сети по протоколу SQL*Net значительно ускоряется если запрос, формирующий эти данные, готовит его упорядоченным по каким-то полям. То есть, применяя инструкцию ORDER BY мы вполне можем ускорить получение данных из системы источника, если мы эти данные забираем через сеть.

Для добавления упорядочивания вам конечно нужно будет модифицировать модуль знаний. Я бы список полей перечислял простым текстом в отдельном параметре LKM, и добавлял ORDER BY конструкцию в зависимости от того, не пуст ли этот параметр.

Другие полезные мысли по оптимизации и ускорению Oracle Data Integrator.