Настройка ETL процессов обновления информации
В этом уроке я продемонстрирую, как ведется проектирование ETL процесса с нуля и до полного завершения в PDI (Pentaho Data Integration). Этот процесс не очень быстрый: все уместилось в два часа. Это очень долго для одного урока, но я решил оставить видео таким, как я его записал. На это есть ряд причин:
- На первый взгляд 2 часа - это много, однако ETL процессы разрабатываются в компаниях в течение нескольких месяцев.
- Все будет разрабатываться, тестироваться на ваших глазах.
- Так как видео смогут осилить немногие, поэтому разделение на несколько уроков не принесет пользы. Куда лучше взять готовую схему и обратиться к той части видео, где возникли вопросы. Видео будет как пример разработки ETL процесса.
Главное вам добиться того, чтобы проект заработал. Вот и сам проект, который разработали в видео. (Загрузка/Download)
Рекомендую просматривать видео на Youtube (ссылка http://youtu.be/XMb8dtlHKME)
План видео /Video plan (ссылка на youtub http://youtu.be/XMb8dtlHKME)
00:05 Цели и задачи / Goals and Objectives
01:29 Как запустить ETL проект (если вы его скачали с сайта) / How to run the ETL project (if you downloaded it from the website).
06:22 Обзор ETL / Overview ETL (ru).
24:04 Разработка/Designing
25:05 Проектирование главного элемента "Job". / Designing the main element "Job".
28:48 Проектирование элемента "Job" для обновления таблицы измерений. / Designing element "Job" to update the table of dimensions.
28:13 Создание элементов "transformation" для обновления таблиц измерений. / Creating elements "transformation“ to update the dimension tables.
29:50 “Insert / Update”.
39:53 “Dimension lookup/update”
47:35 Разработка элемента "Job" загрузки таблицы фактов / Designing the "Job" load the fact table.
48:37 Установка данных в переменные. / Set data into variable.
51:37 Параметризация загрузки данных из таблицы фактов. / Preparing data for load in the fact table (use variable).
01:01:36 Выбор ключа для фильтрации таблицы фактов из OLTP таблицы. / Selection key to filter the fact table from OLTP table.
01:08:12 Фильтрация входной таблицы фактов. / Filtering of the input fact table.
01:10:02 Загрузка кандидата таблицы фактов в WH. / Loading of the candidate fact table in WH.
01:14:19 Вставка данных в контрольное измерение. / Inserting data into control dimension.
01:16:54 Вставка данных в таблицу фактов через SQL запрос. / Insert data into the fact table through a SQL query.
01:31:15 Финальное тестирование и доработка процесса. / Final testing and refinement process.
В уроке использовались следующие приемы:
- Работа со скриптами “Execute SQL script” в PDI. Здесь рассмотрим, как задается параметризация SQL запроса.
- Работа с обновлением таблиц измерений (“Insert / Update”, “Dimension lookup/update”).
- Установка и использование переменных в работе (“Set Variables”).
- Использование трансформаций и заданий.
- Фильтрация таблицы фактов при помощи “Database lookup”.
- Работа с таблицами в Mysql (MySQLWorkbench) и составление запросов.
- Исправление ошибок при обновлении таблиц: устранение ошибок несоответствия типов.
- Вставка таблицы фактов средствами “SQL”
- и другие.
Ссылки по теме:
- Часть 3. Установка Pentaho и PDI (видео)
- Часть 5. Разработка WH (видео)
- Часть 5. Организация хранилища данных (WareHouse)
- Часть 6. Развертывание системы WH через PDI (видео)
- Create DI Solutions http://www.pentaho.com
- Michel Jansen. Building data warehouses using open source technologies
- Matt Casters, Roland Bouman, Jos van Dongen: Pentaho® Kettle Solutions: Building Open Source ETL Solutions with Pentaho Data Integration. Wiley Publishing, Inc.
- Getting Started with Pentaho Data Integration http://www.pentaho.com
- Latest Pentaho Data Integration (aka Kettle) Documentation http://wiki.pentaho.com/display/EAI/Latest+Pentaho+Data+Integration+%28aka+Kettle%29+Documentation
- Data Integration - Kettle http://community.pentaho.com/projects/data-integration/
- A Basic Mondrian Cube: Using Multi-Level Dimensions http://type-exit.org/adventures-with-open-source-bi/2010/07/a-basic-mondrian-cube-using-multi-level-dimensions/
- A Basic Mondrian Cube: Introducing the Star Schema http://type-exit.org/adventures-with-open-source-bi/2010/07/a-basic-mondrian-cube-introducing-the-star-schema/
- ADVENTURES WITH OPEN SOURCE BI http://type-exit.org/adventures-with-open-source-bi/2010/06/run-kettle-job-for-each-row/
- Using Variables in Kettle http://wiki.pentaho.com/display/COM/Using+Variables+in+Kettle
- Pentaho Data Integration (a.k.a. Kettle) and Database Sharding http://www.bluefiredatasolutions.com/blog/2011/01/pentaho-data-integration-and-database-sharding/
- Мини руководство по ETL Kettle на русском языке. (Хотя очень кривое) http://wiki.pentaho.com/display/EAIru/Pentaho+Data+Integration+%28Kettle%29+Tutorial+%28ru%29
- Execute SQL script http://wiki.pentaho.com/display/EAI/Execute+SQL+script
- Insert - Update http://wiki.pentaho.com/display/EAI/Insert+-+Update
- Dimension Lookup-Update http://wiki.pentaho.com/display/EAI/Dimension+Lookup-Update
- Set Variable http://wiki.pentaho.com/display/EAI/Set+Variable
- Database lookup http://wiki.pentaho.com/display/EAI/Database+lookup
- Порядок разработки ETL-процессов http://www.olap.ru/basic/etl.asp
- Подробности
- Опубликовано: 09 Март 2014
- Просмотров: 9044