Федор Хилькевич Александр Бусыгин - sas...

31
Copyright © 2016, SAS Institute Inc. All rights reserved. SAS DI Framework Федор Хилькевич Александр Бусыгин Практический опыт и решения SAS консалтинг Россия для задач интеграции и обработки данных

Upload: others

Post on 25-Jun-2020

17 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

SAS DI Framework

Федор Хилькевич

Александр Бусыгин

Практический опыт и решения SAS консалтинг

Россия для задач интеграции и обработки

данных

Page 2: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

SAS DI FRAMEWORK. ЗАДАЧА

ДОПУСТИМ ВЫ КУПИЛИ ПЕРВУЮ МАШИНУ

Вы прошли курсы вождения, сдали на права

Вы уже выучили все кнопки, рычаги и

педали

Машина стоит у Вас под окном

Автомобиль исправен и заправлен

Page 3: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

SAS DI FRAMEWORK. ЗАДАЧА

…И У ВАС ВОЗНИКАЮТ ВОПРОСЫ:

Какой маршрут выбрать от дома до

работы?

Что-то звенит/трещит/гремит – так и

должно быть?

Я думал что умею водить, но меня

постоянно подрезают и я теряюсь

На какой заправке заправлять? Какой

бензин заливать?

Что еще мне нужно купить? Трос?

Бейсбольную биту?

Page 4: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

SAS DI FRAMEWORK. ЗАДАЧА

ДОПУСТИМ, ВЫ ОПЫТНЫЙ ВОДИТЕЛЬ

У вас уже было несколько машин, ваш стаж

больше 10 лет без аварий

Вы знаете основные неисправности

Вы знаете Москву и перестраиваетесь через

пять полос отвечая на комментарий в

Facebook

Page 5: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

SAS DI FRAMEWORK. ЗАДАЧА

НО ВСЕ РАВНО, ВОПРОСЫ ВОЗНИКАЮТ

Как мне сэкономить время и деньги на

регламентном ТО?

Как снизить расход топлива?

Как запомнить все правила и не попадаться

ДПС?

Как убедится, что не обманывают в

сервисе?

Page 6: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

SAS DI FRAMEWORK. ЗАДАЧА

ВСЕГДА БУДУТ ВОПРОСЫ:

• … правильно?

• … эффективней?

• … выгодней?

• … быстрее?КАК?

Page 7: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

SAS DI FRAMEWORK. ЗАДАЧА

И ТАК, У ВАС ЕСТЬ SAS DATA MANAGEMENT SERVER И….

Вы не работали с SAS

• Как сделать загрузку детального слоя? Нужен ли Stage?

• Как сделать мониторинг загрузки?

• Как обеспечить параллельность потоков загрузки?

• Где делать проверку качества данных?

• Как структурировать и облегчить разработку?

Вы давно работаете с SAS

• Оптимален ли мой процесс разработки, все ли ему следуют?

• Нужны общие правила создания ETL для всех подрядчиков

• Как минимизировать ошибки при обновлении PROD?

• Как снизить трудоемкость поддержки?

• Как снизить трудоемкость внесения изменений?

Page 8: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

SAS DI FRAMEWORK. ЗАДАЧА

ВСЕГДА БУДУТ ВОПРОСЫ:

• … правильно?

• … эффективней?

• … выгодней?

• … быстрее?КАК?

Page 9: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

SAS DI FRAMEWORK – КНИГА РЕЦЕПТОВ

Данные Процесс

Инструмент Исполнители

Page 10: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

SAS DI FRAMEWORK. ЧТО ЭТО?

Методология

• Подход к построению ETL и ХД

• Методология внедрения

• Модель данных

Технология

• Регламенты

• Среда разработки

• Инструкции для разработчиков

• Единая архитектура

Инструментарий

• Макросы

• Трансформации DIS

• Справочники

• Стандарты разработки

• Метаданные

Page 11: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

ТИПОВЫЕ ETL ЗАДАЧИ

ЗАДАЧА 1. СОЗДАТЬ ЕДИНУЮ СРЕДУ РАЗРАБОТКИ НА БАЗЕ SAS DI

Задача

•Нужна общая среда для разработки ETL и единые правила для всех исполнителей

Решение

•Готовая структура метаданных

•Готовая структура проекта

•Стандарты именования и кодирования

•Шаблоны процессов

Эффект

•Снижение трудозатрат за счет внедрении готовой единой среды

•Минимизации ошибок

Page 12: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

ТИПОВЫЕ ETL ЗАДАЧИ

ЗАДАЧА 2. КОНТРОЛЬ ФИЗИЧЕСКОЙ И ЛОГИЧЕСКОЙ ЦЕЛОСТНОСТИ ДАННЫХ

Задача

•ETL-процессы должны содержать проверки и обработки ошибок связанных с целостностью данных

Решение

•Готовые трансформации, справочники и методология контроля

Эффект

•Проверки целостности внедряются с начала проекта

•Минимизация ошибок, экономия трудозатрат на внедрении

Page 13: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

ТИПОВЫЕ ETL ЗАДАЧИ

ЗАДАЧА 3. УПРАВЛЯТЬ РЕГЛАМЕНТОМ И СТАТУСОМ ЗАГРУЗКИ

Задача

• Создать систему флагов и семафоров для мониторинга ошибок и статусов шагов ETL

• Анализ состояния источников

Решение

• Готовые трансформации, макросы и справочники

• Руководство по применению для разработчиков

Эффект

• Минимизация издержек на разработку функционала

• Минимизация ошибок и нештатных ситуаций при загрузке

• Снижение трудоемкости поддержки ETL

Page 14: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

ТИПОВЫЕ ETL ЗАДАЧИ

ЗАДАЧА 4. АСИНХРОННОСТЬ И ПАРАЛЛЕЛЬНОСТЬ ВЫПОЛНЕНИЯ ПРОЦЕССОВ

Задача

•Построить систему загрузки состоящую из независимых другу от друга шагов

•Обеспечить возможность перезапуска любого шага при регламентной загрузке

Решение

•Готовая методология

•Встроенная поддержка асинхронности в трансформации, макросы, шаблоны и т.п.

Эффект

•Оптимальная организация ETL

•Минимизация затрат на администрирование

Page 15: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

ТИПОВЫЕ ETL ЗАДАЧИ

ЗАДАЧА 5. ОБЕСПЕЧИТЬ ПАРАЛЛЕЛЬНОСТЬ РЕЛИЗОВ

Задача

•Автоматизировать перенос релизов на PROD при параллельной разработке несколькими исполнителями

Решение

•Готовая методология

•Набор трансформаций и правил

Эффект

•Сокращение времени переноса в PROD

•Минимизация издержек на поддержку параллельной разработки

Page 16: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

ТИПОВЫЕ ETL ЗАДАЧИ

ЗАДАЧА 6. ЖУРНАЛИРОВАНИЕ, ИСТОРИЧНОСТЬ, ВЕРСИОННОСТЬ

Задача

•Ведение журналов загрузки данных

•Обеспечение историчности данных

•Обеспечить версионирование на уровне данных

Решение

•Набор трансформаций, макросов и шаблонов процессов

•Регламент применения для разработчиков

Эффект

•Сокращение трудозатрат внедрения функционала

•Минимизация трудозатрат на модификацию и администрирование

•Минимизация риска человеческого фактора при разработке

Page 17: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

SAS DI FRAMEWORK. ЭФФЕКТ

Экономия на типовых задачах при

внедрении

• Время

• Деньги

Экономия на построении среды

разработки

• Время

• Деньги

Наличие готового функционала /

инструментария

• Время

• Деньги

• Качество данных

Минимизация ошибок при разработке и

поддержке

• Время

• Деньги

• Качество данных

Экономия на поддержке системы

• Время

• Деньги

Page 18: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

SAS DI FRAMEWORK. НУЖНО ЛИ МНЕ?

КОГДА ЦЕЛЕСООБРАЗНО ВНЕДРЯТЬ SAS DI FRAMEWORK

• Подготовка данных – существенная по трудоемкости часть проекта

• Подсистема ETL будет развиваться и после окончания внедрения решения

• Несколько подрядчиков в области подготовки данных

• Есть несколько источников /потребителей данных, которые могут

изменятся со временем

• Планируется реализовывать различные задачи на единой платформе

Page 19: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

SAS DI FRAMEWORK. КАК ПОЛУЧИТЬ?

SAS DI FRAMEWORK – ПРОЕКТНОЕ РЕШЕНИЕ

• В рамках внедрения решения SAS, как часть проекта

• Отдельный проект по внедрению SAS DI Framework

• Поддержка и внедрение – SAS Consulting

• Сопровождение:

• Cамостоятельно

• Premium Support от SAS

• Партнеры SAS

Это дорого?

• Внедрение DI Framework не увеличивает трудоемкость проекта

• И экономит 20-30% трудозатрат после внедрения основного

функционала

Page 20: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

• Load Sharing Facility (Platform LSF)

• CRON

• Windows Task Manager

• СУБД:

• Oracle

• DB2

• MS SQL*

• SAS Grid Manager

• to be continued…

АРХИТЕКТУРА

ПРОТЕСТИРОВАНО С:

Page 21: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

SAS DI FRAMEWORK. КЛИЕНТЫ

Коммерческий банк

(Top-10)

Задача: Автоматизация расчета

взвешенных по риску активов

• Данные для решения

подготовливаются с помощью

SAS DI Framework

• СУБД: DB2

… следующие 15 мин

Page 22: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

Page 23: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

ЧТО БЫЛО ДО ВНЕДРЕНИЯ DWH ?

зоопарк 2 хранилища данных (одно под

клиентов ФЛ, второе под ЮЛ)

Боже, помоги сделать отчет данные в

хранилищах хранятся в техническом виде (нет

модели). Сложно строить отчеты

информация в хранилищах почти правильная

информация в хранилищах частично

пересекается, дублируется

отчет по дате первой проводки формируетcя

всего 23 часа проблемы с производительностью

Sources

DWH’es Reporting

Page 24: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

ХРОНОЛОГИЯ ПРОЕКТА ПО

ВНЕДРЕНИЮ DWH В UCB

Что делали ?

Собраны бизнес

требования на

пилот DWH

Внедрен пилот DWH. По

результатам внедрения SAS DI

Framework оптимизирован

ETL DWH мигрирован на платформу

SAS GRID.

SAS DI Framework оптимизирован под

SAS GRID

DWH интегрирован с новой АБС и

8 новыми продуктовыми

системами.

Разработаны

функциональные

спецификации и

требования к SAS DI

Framework

Завершена загрузка основных

бизнес-сущностей в модель DWH.

Разработан ряд витрин для CRM,

AML, отчетности

В рамках программы по замене АБС,

DWH дорабатывается параллельно

в рамках 10 проектов

12.2011

06.2012

09.2012

10.2013

09.2014

11.2014

05.2016

Кто делал ?

Команда DWH

Банка,

подрядчик

Команда DWH Банка, SAS Inst и 3 подрядчика Команда DWH Банка, SAS Inst

Команда

DWH Банка,

SAS Inst

Команда DWH Банка,

2 подрядчика

Команда DWH Банка

Команда SAS Institute

Другие подрядчики

Page 25: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

ЧТО ТАКОЕ SAS DI FRAMEWORK В UCB ?

архитектурные принципы и методология

развития DWH

стандарты развития моделей данных DWH

и ETL

библиотека типовых ETL преобразований

методология переноса изменений

между средами

набор программных компонент по

управлению загрузкой DWH

набор программных компонент для

реализации ETL процедур

и управления метаданными

Page 26: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

ТЕКУЩАЯ АРХИТЕКТУРА DWH В UCB

Page 27: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

КАК SAS DI FRAMEWORK

ПОМОГАЕТ РАЗВИВАТЬ DWH

КАЧЕСТВЕННО?

Формализация бизнес

требований

Арх. ревьюбизнес-

требований, доработка

модели DDS и/или витрин

Системный анализ, разработка ТЗ

Разработка ETL процедур

ТестированиеУстановка в production

Эксплуатация

- набор арх. правил на модель данных

- методология развития

- шаблон ТЗ, mapping

- методология развития

- стандарт разработки ETL

- библиотека ETL преобразований

- набор компонент по управлению загрузкой

- стандарт разработки ETL

- шаблон ТЗ, mapping

- методология переноса между средами

- набор компонент по управлению загрузкой

- типовые ETL процедуры

- набор компонент по управлению загрузкой

Что делаем ?

Кто делает ?

Как делает ?

Архитектор DWH Аналитик DWH Разработчик DWH Тестировщик DWH Админ. DWH Админ. DWHБизнес аналитик

SAS DI Framework

Page 28: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

КАК ОРГАНИЗОВАНЫ РАБОТЫ ?

Добавление нового атрибута в

DWH занимает ~0.25 m.D. И не

более 3-ех дней до выхода в prod

с момента получения бизнес-

требований*

В настоящий момент DWH

параллельно дорабатывается 10-

ю проектами

SAS DI Framework поддержит

любую организацию работ

* При организации разработки по agile

Page 29: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

ПОЗВОЛЯЕТ ДОРАБАТЫВАТЬ DWH ПАРАЛЛЕЛЬНО

РАЗЛИЧНЫМИ КОМАНДАМИ БЕЗ ПОТЕРИ В КАЧЕСТВЕ

ПОЗВОЛЯЕТ ТИПИЗИРОВАТЬ ЗАДАЧИ НА ЗАГРУЗКУ

НОВОЙ ИНФОРМАЦИИ В DWH ЗА СЧЕТ МОДУЛЬНОСТИ

ETL И БИБЛИОТЕКИ ТИПОВЫХ ТРАНСФОРМАЦИЙ

ЗА СЧЕТ СТАНДАРТИЗАЦИИ РАЗРАБОТКИ

ЗНАЧИТЕЛЬНО СНИЖАЕТ ТРУДОЗАТРАТЫ НА

ДОРАБОТКУ И ТЕСТИРОВАНИЕ

ЗА СЧЕТ ПРИНЦИПОВ АСИНХРОННОЙ ЗАГРУЗКИ

МОДЕЛИ DWH ОБЕСПЕЧИВАЕТСЯ РАННЕЕ ВРЕМЯ

ГОТОВНОСТИ ДАННЫХ «ЗА ВЧЕРА» В РАЗРЕЗЕ

СУЩНОСТЕЙ И ИСТОЧНИКОВ

ЗА СЧЕТ СТАНДАРТИЗАЦИИ РАЗРАБОТКИ

ЗНАЧИТЕЛЬНО СНИЖАЕТ ТРУДОЗАТРАТЫ НА

ПОДДЕРЖКУ DWH

КОРОТКО О ГЛАВНОМ…

НИЧЕГО НЕ ГОВОРИТ О НЕОБХОДИМОСТИ ВЕСТИ

ГЛОССАРИЙ DWH И КАК ЭТО ПРАВИЛЬНО

ДЕЛАТЬ

НАКЛАДЫВАЕТ ТЕХНИЧЕСКИЕ ОГРАНИЧЕНИЯ В

ОПТИМИЗАЦИИ ETL

НЕ СОДЕРЖИТ ТИПОВЫХ МЕТРИК МОНИТОРИНГА

ПРОЦЕССОВ ЗАГРУЗКИ DWH

ТРЕБУЕТ КВАЛИФИКАЦИИ IT КОМАНДЫ DWH

«СРЕДНЯЯ+»

SAS DI FRAMEWORK

Page 30: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Copyr i g ht © 2016, SAS Ins t i tu t e Inc . A l l r ights reser ve d .

НЕМНОГО ЦИФР

ЗАГРУЗКА DWH РЕАЛИЗОВАНА ~5000 ДЖОБАМИ, КОТОРЫЕ СОГЛАСНО SAS DI

FRAMEWORK ТИПИЗИРОВАНЫ ПО ~10 КАТЕГОРИЯМ

ОСНОВНЫЕ БИЗНЕС СУЩНОСТИ DWH “ЗА ВЧЕРА” ЗАГРУЖАЮТСЯ В ДЕТАЛЬНЫЙ СЛОЙ

К ~05-30, ОСНОВНЫЕ ВИТРИНЫ ФОРМИРУЮТСЯ К ~06-30

ТЕКУЩИЙ ОБЪЕМ ДАННЫХ DWH ~10 ТБ, ХРАНИЛИЩЕ ДОСТАТОЧНО КОМПАКТНОЕ ЗА

СЧЕТ ПРИНЦИПА ИНТЕРВАЛЬНОГО ХРАНЕНИЯ ДАННЫХ В МОДЕЛИ

В РАМКАХ ОДНОГО ЦИКЛА ЗАГРУЗКИ DWH ОБРАБАТЫВАЕТСЯ ~300 GB ВХОДНЫХ

ДАННЫХ, ПАРАЛЛЕЛЬНО ГРУЗИТСЯ ДО 20 ИСТОЧНИКОВ ДАННЫХ

В НАСТОЯЩИЙ МОМЕНТ У DWH ~45 ОСНОВНЫХ ИСТОЧНИКОВ ДАННЫХ

ДЕТАЛЬНЫЙ СЛОЙ DWH В НАСТОЯЩИЙ МОМЕНТ СОСТОИТ ИЗ ~250 ТАБЛИЦ

ЗА ВСЕ ВРЕМЯ РАЗВИТИЯ, DWH ДОРАБАТЫВАЛО ~150 ЧЕЛОВЕК

НА 2-ОЙ ЛИНИИ, DWH ПОДДЕРЖИВАЕТ 1 ЧЕЛОВЕК. ИНОГДА ОН СПИТ

Page 31: Федор Хилькевич Александр Бусыгин - Sas Institute...бизнес-сущностей в модель DWH. Разработан ряд витрин для

Спасибо

SAS® FORUM RUSSIA 2016