ETL Automation Testing with SQL and Python
(Learn Data Warehousing, ETL process, SQL queries, Joins, Subqueries, Python automation, Data validation, ETL frameworks, Performance checks, and Real-world projects with hands-on training to build job-ready skills.)
This course provides a complete, hands-on journey into ETL testing, data validation, and automation using SQL and Python. You’ll start by learning the foundations of data warehousing, data modeling, and ETL processes before diving into SQL for querying, validating, and managing data. With Python, you’ll explore scripting, automation, and handling data efficiently to streamline ETL testing workflows.
By the end of this course, you’ll be equipped with the skills to test, validate, and automate data pipelines, ensuring data accuracy and quality in real-world projects. Whether you’re a beginner stepping into data testing or a professional aiming to upskill, this course will help you confidently work with data warehouses, BI systems, and ETL tools.
About the Instructor:
|
Ravi Prasad is an experienced IT and analytics professional with strong skills in Python, SQL, data analytics, and data pipeline/ETL processes. He has more than 7 years of relevant industry experience, contributing to roles where analytics, data validation, and automation have been central to his work. He has worked across different domains (e-commerce, customer support, product analytics) and is passionate about turning data into actionable insights. His background includes both hands-on development and support as well as mentoring, where he helps learners understand real-world problems, writing clean queries, testing data, and automating repetitive tasks. Over the years, he has successfully completed 25+ batches and trained over 500 students across different domains. |
Sample Videos:
Live Sessions Price:
For LIVE sessions – Offer price after discount is 300 USD 259 89 USD Or USD13000 INR 12900 INR 6900 Rupees
OR
What will I learn by the end of this course?
- Understand the fundamentals of Data Warehousing, architecture, and data modeling.
- Perform ETL (Extract, Transform, Load) testing with real-time scenarios.
- Write efficient SQL queries for data validation, transformation, and reporting.
- Use Python to automate ETL testing workflows and handle data effectively.
- Work with schemas, dimensions, facts, and Slowly Changing Dimensions (SCDs).
- Apply different ETL loading techniques (full, incremental, delta).
- Practice SQL concepts including joins, subqueries, views, indexes, and functions.
- Gain hands-on experience with data quality checks and automation scripts.
- Learn best practices for ETL testing and prepare for interview questions.
- Build confidence to work on end-to-end ETL testing projects in real-world environments.
Free Day 1 Session:
7th October @ 9:00 PM – 10 PM (IST) (Indian Timings)
7th October @ 11:30 AM – 12:30 PM (EST) (U.S Timings)
7th October @ 4:30 PM – 5:30 PM (BST) (UK Timings)
Class Schedule:
For Participants in India: Monday to Friday @ 9:00 PM – 10: PM (IST)
For Participants in the US: Monday to Friday @ 11:30 AM – 12:30 PM (EST)
For Participants in the UK: Monday to Friday @ 4:30 PM – 5:30 PM (BST)
What students have to say about Ravi Prasad:
|
👩 Fatima: 👨 Arjun Mehta: 👨 James Robinson: 👩 Sophia Rodriguez: 👨 Vamshi Krishna: |
Salient Features:
- 50+ Hours of Live Training along with recorded videos
- Lifetime access to the recorded videos
- Course Completion Certificate
Who can enroll for this course?
- Fresh Graduates & Beginners – Anyone starting a career in Data Warehousing, ETL, or Database Testing.
- Manual & Automation Testers – Professionals looking to expand their skills into ETL and data validation.
- Developers & Data Analysts – Who want to strengthen SQL and Python skills for handling data pipelines.
- BI & Data Warehouse Professionals – Seeking to gain deeper knowledge in ETL testing and data quality.
- Career Switchers – IT professionals from other domains aiming to transition into Data Engineering or Testing.
- Students & Learners – Who want practical, job-ready knowledge of SQL, Python, and ETL testing.Course syllabus:
ETL
- Introduction to Data Warehousing
- What is a Data Warehouse?
- Need for Data Warehousing
- Operational vs. Analytical Systems
- Key Characteristics (Subject-Oriented, Integrated, Time-Variant, Non-Volatile)
- Benefits of a Data Warehouse
- Data Warehouse Architecture
- Basic Architecture Overview
- Types of Architecture:
- Single-Tier
- Two-Tier
- Three-Tier Architecture
- Components:
- Data Sources
- ETL Process
- Staging Area
- Data Warehouse Database
- Data Marts
- OLAP Engine
- Front-End Tools / BI Tools
- Data Modeling
- Conceptual, Logical, and Physical Models
- Schema Types:
- Star Schema
- Snowflake Schema
- Dimensions and Facts
- Surrogate Keys
- Slowly Changing Dimensions (SCD Type 0/1/2/3/6)
- ETL (Extract, Transform, Load)
- Overview of ETL
- Extraction Techniques
- Transformation Rules
- Loading Mechanisms (Full, Incremental, Delta Load)
- ETL Tools (e.g., Informatica, Talend, SSIS)
SQL
- Introduction to SQL
- What is SQL?
- History and Importance of SQL
- SQL Standards (ANSI SQL)
- Types of SQL Languages:
- DDL (Data Definition Language)
- DML (Data Manipulation Language)
- DCL (Data Control Language)
- TCL (Transaction Control Language)
- SQL Environment Setup
- Installing SQL Tools (MySQL, PostgreSQL)
- Data Definition Language (DDL)
- CREATE TABLE
- ALTER TABLE
- DROP TABLE
- TRUNCATE TABLE
- Data Types (INT, VARCHAR, DATE, etc.)
- Constraints:
- PRIMARY KEY
- FOREIGN KEY
- NOT NULL
- UNIQUE
- CHECK
- DEFAULT
- Data Manipulation Language (DML)
- INSERT INTO
- UPDATE
- DELETE
- SELECT (Basic Queries)
- SELECT Statement in Depth
- SELECT * vs. SELECT specific columns
- Aliases using AS
- Filtering Data with WHERE
- Operators:
- Comparison (=, !=, >, <, >=, <=)
- Logical (AND, OR, NOT)
- BETWEEN, IN, LIKE, IS NULL
- Sorting and Limiting Results
- ORDER BY
- LIMIT / TOP / FETCH (depending on SQL dialect)
- Aggregate Functions
- COUNT(), SUM(), AVG(), MIN(), MAX()
- GROUP BY
- HAVING vs. WHERE
- SQL Joins
- Introduction to Joins
- INNER JOIN
- LEFT JOIN / LEFT OUTER JOIN
- RIGHT JOIN / RIGHT OUTER JOIN
- FULL OUTER JOIN
- SELF JOIN
- CROSS JOIN
- Subqueries
- Inline Subqueries
- Correlated vs. Non-Correlated Subqueries
- Subqueries in SELECT, FROM, WHERE, HAVING
- Set Operations
- UNION vs. UNION ALL
- INTERSECT
- EXCEPT / MINUS
- Data Control Language (DCL)
- GRANT
- REVOKE
- Transaction Control Language (TCL)
- BEGIN TRANSACTION
- COMMIT
- ROLLBACK
- Views and Indexes
- Creating and Using VIEW
- Basic SQL Functions
- String Functions (UPPER(), LOWER(), CONCAT(), SUBSTRING())
- Numeric Functions (ROUND(), CEIL(), FLOOR())
- Date and Time Functions (NOW(), DATEADD(), DATEDIFF())
- SQL Best Practices With interview Questions and Answers
PYTHON
- Introduction to Python
- What is Python?
- Features of Python
- Applications of Python
- Installing Python (Windows, Mac, Linux)
- Python IDEs (IDLE, VS Code, PyCharm, Jupyter)
- Python Basics
- Writing and Running Your First Python Script
- Python Syntax and Indentation
- Comments in Python (# single-line, ”’ ”’ multi-line)
- The print() function
- Input with input()
- Variables and Data Types
- Variable Declaration
- Data Types:
- Integer (int)
- Float (float)
- String (str)
- Boolean (bool)
- Type Conversion (int(), str(), float())
- Checking Data Type (type())
- Operators
- Arithmetic Operators (+, -, *, /, //, %, **)
- Assignment Operators (=, +=, -=, etc.)
- Comparison Operators (==, !=, <, >, <=, >=)
- Logical Operators (and, or, not)
- Membership Operators (in, not in)
- Identity Operators (is, is not)
- Control Flow (Decision Making)
- if, elif, else statements
- Nested if statements
- Ternary Conditional Expression
- Loops and Iteration
-
- for loop
- while loop
- Loop control statements:
- break
- continue
- pass
- Data Structures in Python
- Strings
- String operations and methods
- String slicing
- Formatting strings (f””, .format())
- Lists
- Creating and indexing lists
- List methods (append(), remove(), sort(), etc.)
- List comprehension
- Tuples
- Creating and using tuples
- Tuple unpacking
- Sets
- Creating sets
- Set operations (union(), intersection(), etc.)
- Dictionaries
- Creating dictionaries
- Accessing and modifying values
- Dictionary methods (get(), keys(), values())
- Functions
- Defining and calling functions (def)
- Arguments and return values
- Default arguments
- Keyword arguments
- *args and **kwargs
- Error Handling
-
- Try-Except Blocks
- Multiple Exception Handling
- Finally Block
- Common Exceptions (ValueError, TypeError, ZeroDivisionError, etc.)
- Modules and Packages
- Importing Modules (import, from … import)
- Using Built-in Modules (math, random, datetime)
- Creating Your Own Module
- Installing External Packages with pip
- File Handling
-
- Opening Files (open())
- Reading from a file (read(), readline(), readlines())
- Writing to a file (write(), writelines())
- Closing files
- Using with statement for files
- Intro to Object-Oriented Programming (OOP)
- Classes and Objects
- __init__ method (constructor)
- Instance vs. Class Variables
- Methods
- Inheritance (basic intro)
- Working with Libraries (Optional for Beginners)
- math and random
- datetime
- os and sys
- Pythonic Concepts
- List Comprehensions
- Lambda Functions
- map(), filter(), and reduce() (intro)
- Introduction to Data Warehousing
