суббота, 16 июня 2012 г.

Дуку.

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

А в эту категорию я включаю не только аналитиков, но и разработчиков ETL, и тестировщиков и даже DBA.

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

Тайна Duqu: часть первая
Тайна Duqu: часть вторая
Тайна Duqu: часть третья
Тайна Duqu: Привет, "Mr. B. Jason" и "Dexter"
Тайна Duqu: часть пятая
Тайна Duqu: часть шестая
Тайна Duqu: часть седьмая
Загадка фреймворка Duqu. Самая комментируемая часть с исследованием используемого языка программирования для Дуку.
Фреймворк Duqu: задача решена
Тайна Duqu: часть десятая
Stuxnet/Duqu: эволюция драйверов

Ну а началось это еще раньше, с вот таких вот исследований: Мирт и Гуава, эпизоды 1, 2, 3, 4, 5, 6, 7.

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

Как говорилось в старом анекдоте,- а теперь работать, работать, работать!

пятница, 15 июня 2012 г.

Архитектура высоконагруженных проектов.

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

Или с другой, немного поновее - архитектура Instagram.

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

четверг, 14 июня 2012 г.

Начиная ETL проект.

Самым популярным, по количеству скачиваний, документом со страницы документации по ODI оказался файл с названием Getting Started an ETL project. Думаю, люди ее скачивали, потому что путали с давно анонсированной, но только недавно вышедшей книгой по ODI.

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

Вот перед началом этого пилота я и подумал - посмотрю, что в Getting-ах то пишут, наверное, что-то полезное там будет, что-то, что я бы мог применить на проекте.

среда, 13 июня 2012 г.

Getting tired with Oracle Data Integrator 11g - bugs and errors tutorial.

Недавно по некоторым блогам и группам ЛинкедИна прошла информация о том, что книга по ODI 11g вышла в мае 2012 года.

Вот ссылка на новость в блоге - "Ищите чего-нибудь почитать на тему интеграции?"

Теперь наличие столь большого количества ошибок в ODI последней версии обретает какое-то, пусть эмпирическое, объяснение, а именно - люди, отвечающее за ODI, вместо поиска и исправления ошибок писали книгу.

воскресенье, 10 июня 2012 г.

Философия оптимизации - Хинты.

Перевод.
Оригинал находится по ссылке.


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

Недавно, меня попросили посмотреть на таблицу, использующую очень сложную логику агрегации и расчетов, при этом расчеты проводились в ситуации почти реального времени. Передо мной поставили три жестких условия: генерировать как можно более малый объем redo лога, обновление таблицы должно быть максимально быстрым и данные в целевой таблице должны быть доступны все время – нет такого периода времени, даже во время обновления, в течение которого к данным нельзя обратиться через запрос. Я решил, что в этом случае подход с обменом секциями (партициями), с использованием операции truncate и вставки добавлением в обменную таблицу сработает лучше всего.

четверг, 7 июня 2012 г.

Про !БД.

Завязка:
    Я был свидетелем возникновения новой должности. Администраторы баз данных! Простым программистам нельзя доверять данные — так гласила маркетинговая чушь.

Коменты:
    Какое уж там разделение, если программисты не хотят понять необходимость наличия администраторов БД. Причём каждая СУБД это свой мир, свои правила, свои оптимизации и, чего уж там, хаки.

Читайте всю историю о критике реляционных БД и плохого американского пива на хабре.

воскресенье, 3 июня 2012 г.

Доступ к собственному репозиторию из сценария.

Приветствую коллеги.

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

Кстати, для тех, кто пока не считает себя великим ODI гуру - крайне полезно будет пройти по всем записям этого блога за 2010 год, начиная прямо с июля месяца. Я уверен, вы найдете там массу интересного.


Пример был работающий, но его применимость была несколько ограниченной. Объясню почему. У нас на проекте настройка контекстов, например, DEV и TEST была, в основном, связана с взаимоувязкой физической схемы дев источника данных с физической схемой приемника данных опять же на дев сервере. Тоже самое касалось контекста TEST, где связывались между собой две физических схемы на том же сервере: тест-источник <-> тест приемник.