Поддержка структурных изменений в процессах загрузки данных Долбешкин Андрей Николаевич, 545 группа Руководитель: Александр Сергеевич Дольник Рецензент: д. ф-м. н. Борис Асенович Новиков Санкт-Петербург 2012
О предметной области ETL процесс – процесс извлечения- преобразования-загрузки данных. Характерна регулярность. Внешние источники данных Локальные БД Операционные БД ETL Хранилище данных OLAP Статистика Анализ данных Отчеты
Постановка задачи Выявить структурные изменения в источниках данных Разработать метод диагностики, в том числе потенциальных, структурных изменений в источниках данных Реализовать метод поддержки структурных изменений
Классификация структурных изменения в источниках данных Удаление именованных/неименованных столбцов Переименование столбцов Изменение формата данных Изменение порядка столбцов Разделение столбцов Удаление связей
ETL-сценарий Файлы с данными по температуре Отбор параметров Фильтрация по региону Загрузка в БД Отбор файлов
ETL-сценарий
Чем плох классический сценарий ETL Сложность диагностики и исправления проблем – Сложность поиска причины – Сложность поиска виновного – Большие трудозатраты на исправление Сложность отслеживания качества данных Низкий уровень интерпретации ошибок
Описание модели Модель процесса представляется в виде графа (Alkis Simitsis) В основе лежит преобразование графов Проектирование ETL процесса на основе онтологий
Онтология O =, где – Х – понятия предметной области – R – отношения между понятиями (typeOf, partOf, is-a) – F - функциональные интерпретации (f1:string->{1,0}, f2:range->{1,0}, f3:regexp->{1,0}) Стандарт OWL 2.0 (W3C)
Описание модели SrcNode TrgNode Operation FILTER IntmNode Operation OntNode Is-a
Описание метода Расширение графовой модели Усовершенствование операции Filter Отложенное изменение процесса – Предложение внести изменение в процесс – Предложение сгенерировать процесс заново
Модифицированный ETL- сценарий Файлы с данными по температуре Отбор параметров Фильтрация по региону Загрузка в БД Корзина Фильтр Отбор файлов
Модифицированный ETL- сценарий
Описание особенностей реализации метода Реализован в виде плагина к Kettle – Осуществляет отображение модели данных на онтологию – Создает графовую модель процесса – Строит по модели процесса реальные трансформации в Kettle
Развитие ETL-процессов ПримерАнализКодир.Под.(2-4 мес.) Hardcode1 ч/д24 ч/д4 ч/д hardcode + libs 1 ч/д17 ч/д3-4 ч/д Kettle1 ч/д2.5 ч/д0.5-1 ч/д SETTL3 ч/давто~0
Заключение Классифицированы структурные изменения в источниках данных Разработан метод диагностики структурных изменений в источниках данных Реализован алгоритм перестроения процесса Решение уменьшает время разработки и поддержки процесса