EIEIOTECHNOVATION
← Training programmes

EIEIO / DATA SCIENCE

ETL

Course outline

3 days

Duration

3 days

OVERVIEW

ETL tools are used to Extract data from homogeneous or heterogeneous data sources, Transform data for storing it in proper format or structure for querying and analysis purpose and Load data into the final target (database, more specifically, operational data store, data mart, or data warehouse). Usually in ETL tools, all the three phases execute in parallel since the data extraction takes time, so while the data is being pulled another transformation process executes, processing the already received data and prepares the data for loading and as soon as there is some data ready to be loaded into the target, the data loading kicks off without waiting for the completion of the previous phases.

There are a few popular open source ETL tools in market such as Talend, Scriptella, KETL, Pentaho and etc. Talend provides multiple solutions for data integration, both open source and commercial editions. Talend offers an Eclipse-based interface, drag-and-drop design flow, and broad connectivity with more than 400 pre-configured application connectors to bridge between databases, mainframes, file systems, web services, packaged enterprise applications, data warehouses, Software-as-a-Service, Cloud-based applications, and more. Scriptella is an open source ETL and script execution tool written in Java. Its primary focus is simplicity. You don't have to study yet another complex XML-based language - use SQL to perform required transformations. Scriptella is licensed under the Apache License. KETL is a premier, open source ETL tool. The data integration platform is built with portable, java-based architecture and open, XML-based configuration and job language. KETL features successfully compete with major commercial products available today. Pentaho Data Integration is an interpreter of procedures written in XML format. It also provides a JavaScript engine as well as a Java engine to fine tune the data manipulation process.

At the end of this course, participants will be able to deploy and automate process to extract data from various sources, transform them so that the data can be queried, and finally load them into a warehouse. Participants would be able to apply these concepts in their day to day projects, where there might be a need to move data across systems and store it in a friendly query-able format for reporting and analysis

OBJECTIVES

  • Understand the key terms in Data Quality
  • Understand how to install and create Data profiling and cleansing jobs
  • Understand how to automate key phases of Data Quality Management framework
  • Understand the basics of Pentaho Data Integration and Data cleaner tool
  • Create ETL jobs that connect to almost any data source
  • Build standalone jobs that run on a schedule or based on an event
  • Filter, Modify, Unite data
  • Make jobs more user-friendly for non-technical users
  • Understand how to Integrate Data cleaner tool with PDI
  • Several hands on sessions to understand how to implement data quality jobs, data profiling jobs and how to schedule these jobs

PREREQUISITES

There is no pre-requisite to this course. We go through each step in detail.

TARGET AUDIENCE

  • Anyone who is interested in Data Integration ant ETL
  • Everyone who wants to make their job easier

Introduction

  • What is Data Integration
  • What is ETL
  • Data Acquisition
  • Data Transformation
  • ETL explained
  • ETL vs ELT
  • ETL Phases
  • Introduction to Talend
  • Overview of Talend
  • Talend fundamentals
  • Architecture of Talend
  • Installation
  • Talend UI
  • Repository Tab
  • Context and Metadata
  • Data Mapping
  • Mapping Data
  • Data Generation
  • Filtering Mapped Data
  • Mapping Database Data
  • Conversion, Extraction, Join
  • Regex Expression
  • XML to CSV Conversion
  • CSV to XML Conversion
  • Advanced XML
  • Joining Data
  • Splitting Data
  • Performing Advanced Data Lookups
  • Uniting Data
  • Databases
  • Databases in Talend
  • Working with Hyper SQL (HSQL)
  • Looking at Table Schema’s
  • Importing Table Schema’s
  • Reading Data from Database
  • Writing Data to a Database

Day 2

  • Introduction to Pentaho Data Integration
  • Introduction to Pentaho
  • Objectives & Class Logistics
  • What is Pentaho Data Integration (PDI)?
  • Introduction to DataCleaner
  • Installation of PDI
  • Installation of DataCleaner in stand-alone mode
  • Installation of DataCleaner as Plug-in with PDI
  • Integrating DataCleaner with PDI
  • Creating a Job with PDI
  • Creating a Transformation with PDI
  • Executing a DataCleaner Job in PDI
  • Scheduling a PDI Job
  • Transformation Basics
  • Learning the PDI User Interface
  • Creating Transformations
  • Error Handling & Logging Introduction
  • Introduction to Repositories
  • Reading & Writing Files
  • Input & Output Steps
  • Parameters & kettle.properties
  • Reading a simple file and several files at the same time
  • Reading semi-structured files
  • Reading files having fields and rows
  • Reading an Excel file
  • Writing an Excel file with several sheets
  • Writing an Excel file with a dynamic number of sheets
  • Working with Databases

10.1. Connecting to & Exploring a Database

10.2. Table Input & Output

10.3. Insert, Update, & Delete Steps

10.4. Data Cleansing

10.5. Using Parameters & Arguments in SQL

Day 3

  • Data Flows & Lookups

11.1. Copying and Distributing Data

11.2. Splitting a stream into two or more streams based on a condition

11.3. Merging rows of two streams with the same or different structure

11.4. Comparing two streams and generating differences

11.5. Generating all possible pairs formed from two datasets

11.6. Joining two or more streams based on given conditions

11.7. Interspersing new rows between existent rows

11.8. Executing steps even when your stream is empty

11.9. Processing rows differently based on the row number

  • Calculations

12.1. Using the Group By Step

12.2. Calculator

12.3. Regular Expression

12.4. User Defined Java Expression

12.5. JavaScript

  • Job Orchestration

13.1. Introduction to Jobs

13.2. Sending Alerts

13.3. Looping & Conditions

13.4. Executing Jobs from a Terminal Window (Kitchen)

13.5. Creating jobs

13.6. Executing transformation using jobs

13.7. Passing and retrieving data to/from the transformations.

13.8. Conditional execution of jobs

13.9. Pre-execution Validation with job.

13.10. File management through Jobs

  • Scheduling

14.1. Setting up the Scheduler

14.2. Monitoring Scheduled Tasks

14.3. Scheduling on the Command Line

  • Exploring Data Integration Repositories

15.1. The Pentaho Data Integration Repository

  • Detailed Logging

16.1. Setting up a Dedicated DB Schema

16.2. Setting up Built-in Logging

16.3. Detailed Logging throughout Execution

Programme scope, delivery arrangements and suitability are confirmed during enquiry.