Big Data Analytics with Python Training Course

Duration 10 days 18 modules · 65 contact hours
Level Intermediate Certificate on completion
Who attends Data Analysts, Data Engineers and others
Fee from USD 2,200 KSh 190,000 for Kenyan organisations
Where 52 cities + online See dates by city
Next start 9 Nov 2026 Course code SD-DS-046

Before you join: Participants should be comfortable writing basic Python, including functions, lists, dictionaries, loops and DataFrame operations, and should be able to read straightforward SQL queries.

Dates & prices

Two start dates a month in every city, and live online on weekdays or weekends. Fees are per participant; classroom fees include tuition, materials, lunch and refreshments, and the certificate.

Suggest a date or city

Showing the next six months. Later dates, other cities and private deliveries for your team are available on request.

Course overview

Large organisations collect transaction, sensor, customer, claims and operational data faster than conventional desktop analysis can process it. The challenge is not merely running code: teams must ingest changing sources, validate records, distribute transformations, control costs, protect sensitive fields and explain results to decision-makers. Poor partitioning, weak quality checks or unclear metric definitions can produce late reports and misleading decisions at scale.

This 10-day course develops the Python and distributed-data engineering skills required to turn high-volume data into trusted analytical outputs. Participants work with pandas for local exploration, then use PySpark, Spark SQL and Delta Lake patterns for distributed ingestion, transformation, storage and reporting. The syllabus covers schema design, data quality testing, partitioning, joins, performance tuning, batch pipelines, streaming concepts, analytical modelling, machine learning workflows and data governance.

Instructor-led delivery combines short technical briefings with guided case work, team-based analysis, code reviews and application planning. Participants build work from the first week and refine it through performance, reliability and governance requirements in the second. They leave with a completed capstone analytics pipeline, supporting documentation and reusable templates for data-quality controls, pipeline design and operational handover. The course is available in classrooms across 50+ cities or live online, runs from 08:30 to 16:30 each day, and includes a certificate of completion.

The course suits professionals who already use Python or SQL and need to work confidently with data volumes, processing patterns and governance obligations beyond single-machine analysis.

What you will be able to do

  • Build distributed data pipelines in PySpark for batch analytical workloads
  • Profile, clean and validate large datasets using pandas and data-quality checks
  • Design partitioned Parquet and Delta Lake datasets for efficient querying
  • Optimise Spark joins, aggregations and storage operations using execution evidence
  • Develop parameterised and testable Python jobs with audit and recovery controls
  • Apply Spark SQL and window functions to create decision-ready analytical metrics
  • Evaluate machine learning workflows using appropriate features, splits and metrics
  • Present a governed big-data analytics solution with documented findings and handover

Benefits of attending

For you

  • Ability to move from pandas analysis to PySpark distributed processing
  • Practical evidence for designing efficient partitioned analytical datasets
  • Reusable methods for diagnosing slow Spark jobs and skewed joins
  • Greater confidence reviewing data quality, lineage and privacy controls
  • A portfolio-ready PySpark capstone pipeline with supporting documentation

For your organisation

  • Faster delivery of analytical datasets from high-volume operational sources
  • Lower processing costs through better partitioning, joins and storage choices
  • More reliable reporting through automated quality checks and audit counts
  • Clearer controls for sensitive data, retention and access decisions
  • Improved handover of data pipelines through runbooks, tests and documentation

Course modules

18 modules over 10 days

Participants can distinguish distributed analytics patterns and select an appropriate processing approach.

  • Distributed data workloads: partitions, shuffles, storage locality and fault tolerance
  • Python's role beside SQL, JVM engines and cloud object storage
  • Batch, micro-batch and streaming patterns matched to decision latency
  • Volume, velocity, variety and veracity translated into engineering constraints
  • Lakehouse layers separate raw, refined and curated analytical datasets
  • Cost, latency and reliability trade-offs for distributed analytics pipelines

Participants can structure a reproducible Python analytics project with controlled dependencies and credentials.

  • Conda environments pin Python and package versions for reproducible projects
  • Jupyter notebooks separate exploration, narrative and executable analysis cells
  • Project folders organise source code, tests, configuration and data contracts
  • Git branches, commits and pull requests support reviewable analytical code
  • Requirements files record dependencies for Spark and local Python execution
  • Secrets management keeps database credentials outside notebooks and repositories

Participants can ingest common source formats while recording schema, extraction and lineage information.

  • CSV, JSON, Parquet and Avro formats compared for analytical workloads
  • Schema-on-read parsing handles nested records, arrays and nullable fields
  • Read partitioned Parquet datasets with predicate pushdown and column pruning
  • JDBC ingestion extracts relational tables using incremental watermark queries
  • REST API pagination, retries and rate limits managed in Python
  • Data lineage records source, extraction time, schema and owner

Participants can prepare and profile moderate-sized datasets using efficient pandas methods.

  • pandas DataFrames inspect types, missingness, duplicates and cardinality
  • Vectorised filtering, joins and groupby aggregations replace row-wise loops
  • Datetime parsing standardises time zones, frequencies and reporting periods
  • Categorical encoding reduces memory use and preserves controlled values
  • Reusable functions turn exploratory transformations into testable Python modules
  • Profile reports expose outliers, invalid codes and unexpected distributions

Participants can define, test and document data-quality controls for analytical pipelines.

  • Define data-quality dimensions: completeness, validity, uniqueness, consistency and timeliness
  • Great Expectations suites express column, schema and distribution checks
  • Quarantine invalid records while retaining reasons, timestamps and source references
  • Null handling distinguishes unknown, not applicable, delayed and corrupted values
  • Reconciliation compares source totals, record counts and key aggregates
  • Document assumptions, transformations and exceptions in a data-quality log

Participants can explain Spark execution and configure a PySpark application for distributed processing.

  • SparkSession configuration connects Python applications to a Spark cluster
  • RDDs, DataFrames and Spark SQL compared by abstraction and use
  • Lazy evaluation builds directed acyclic graphs before execution begins
  • Transformations create new datasets; actions trigger computation and materialisation
  • Executors, drivers and cluster managers determine resource allocation
  • Explain plans reveal scans, exchanges, joins and predicate placement

Participants can create distributed transformations, joins and aggregations using PySpark DataFrames.

  • PySpark DataFrames select, filter, derive and rename distributed columns
  • Built-in functions replace Python UDFs when optimiser support exists
  • Window functions calculate ranks, lags, rolling metrics and cohorts
  • Join types, join keys and duplicate multiplication diagnosed systematically
  • Aggregation plans produce customer, product and time-period metrics
  • Column expressions preserve distributed execution without collecting data locally

Participants can use Spark SQL to develop readable and efficient analytical transformations.

  • Spark SQL creates temporary views for analyst-friendly transformation logic
  • Common table expressions structure multi-stage analytical queries clearly
  • GROUP BY, HAVING and window clauses answer operational questions
  • Query plans identify full scans, skewed joins and unnecessary shuffles
  • Partition filters and column pruning reduce scanned data volume
  • SQL and DataFrame implementations compared for maintainability and performance

Participants can design scalable analytical storage with appropriate file, partition and table choices.

  • Parquet compression, row groups and statistics support selective reads
  • Partition design uses date, region and domain keys judiciously
  • Small-file compaction improves scheduler efficiency and metadata performance
  • Delta Lake transactions prevent partial writes and concurrent update conflicts
  • Medallion layers define raw, validated and serving dataset responsibilities
  • Retention policies balance reproducibility, storage cost and regulatory obligations

Participants can diagnose Spark performance issues and apply targeted optimisation techniques.

  • Partition counts align task parallelism with available cluster cores
  • Repartition and coalesce manage shuffle cost and output file sizes
  • Broadcast joins avoid large data exchanges for small dimensions
  • Salting techniques mitigate skewed keys in high-volume joins
  • Cache only reused datasets after measuring memory and recomputation cost
  • Spark UI metrics diagnose stages, spills, skew and executor failures

Participants can build parameterised batch jobs with testing, audit and recovery controls.

  • Parameterised PySpark jobs separate business rules from runtime configuration
  • Idempotent writes permit safe reruns after partial pipeline failures
  • Watermarks identify new records for incremental batch processing
  • Control tables store run status, source offsets and audit counts
  • Structured logging captures job identifiers, timings, exceptions and record volumes
  • Unit tests verify transformations using representative edge-case datasets

Participants can define orchestration, monitoring and support arrangements for production data jobs.

  • Apache Airflow DAGs express task dependencies, schedules and retry policies
  • Task parameters pass dates, paths and environment-specific settings safely
  • Service-level objectives define freshness, completion time and failure thresholds
  • Alert routing distinguishes transient errors from business-critical data incidents
  • Runbooks specify diagnosis steps, rollback decisions and escalation contacts
  • Backfill plans prevent duplicate outputs during historical reprocessing

Participants can explain and configure core Structured Streaming patterns for event data.

  • Structured Streaming processes append, update and complete output modes
  • Event-time windows aggregate transactions despite delayed message arrival
  • Watermarks bound state size while handling acceptable late events
  • Checkpoint locations preserve progress across application restarts and failures
  • Kafka topics, partitions and consumer offsets underpin streaming ingestion
  • Deduplication keys control repeated events within defined time horizons

Participants can design analytical tables and features that preserve business meaning and historical accuracy.

  • Feature tables combine behavioural, transactional and reference data at grain
  • Dimensional modelling defines facts, dimensions, surrogate keys and conformed attributes
  • Slowly changing dimensions preserve historical values using Type 2 records
  • Point-in-time joins prevent future information entering predictive features
  • Data leakage checks protect model evaluation from invalid training signals
  • Business metrics translate model outputs into measurable operational decisions

Participants can prepare features, train basic Spark models and interpret evaluation results.

  • Spark ML Pipelines chain preprocessing, modelling and scoring stages
  • StringIndexer, OneHotEncoder and VectorAssembler prepare structured feature vectors
  • Train-validation splits preserve temporal ordering where outcomes evolve
  • Logistic regression produces calibrated probabilities for binary classification
  • Regression metrics include MAE, RMSE and residual diagnostics
  • Classification evaluation uses precision, recall, F1 and ROC-AUC appropriately

Participants can apply governance controls to analytical data, access decisions and model outputs.

  • Role-based access controls restrict datasets according to approved job functions
  • PII classification identifies direct identifiers, quasi-identifiers and sensitive attributes
  • Tokenisation, hashing and masking support controlled analytical data access
  • GDPR principles guide purpose limitation, minimisation and retention decisions
  • Model documentation records intended use, limitations, inputs and monitoring
  • Bias checks compare error rates across relevant protected groups

Participants can turn analytical outputs into documented findings for technical and business stakeholders.

  • Aggregate outputs into decision-ready KPI tables with stated metric definitions
  • Matplotlib and seaborn charts expose trends, variation and outliers
  • Confidence intervals communicate uncertainty around sampled or modelled estimates
  • Data dictionaries define fields, grain, refresh cadence and ownership
  • Executive narratives state findings, caveats, decisions and recommended actions
  • Acceptance criteria link delivered datasets to stakeholder requirements

Participants can build, review and present a complete PySpark analytics pipeline with validated outputs, controls and handover documentation.

  • Frame a business question, decision owner, scope and success measures
  • Acquire and profile source data using documented schema and lineage
  • Build a PySpark transformation pipeline with quality controls and audit outputs
  • Optimise storage, joins and partitions using observed execution evidence
  • Produce validated metrics or model scores with documented limitations
  • Present architecture, findings, controls and operational handover recommendations

Exercises and examples are adapted to each cohort's sectors and roles.

What you take back to work

  1. PySpark analytics pipeline blueprint
  2. Data-quality rules and reconciliation log template
  3. Spark performance diagnostic checklist
  4. Partitioning and storage design worksheet
  5. Pipeline runbook and operational handover template
  6. Capstone architecture and findings presentation

Who should attend

  • Data Analysts — need to analyse larger datasets beyond desktop tools
  • Data Engineers — need practical PySpark patterns for reliable analytical pipelines
  • Business Intelligence Developers — need scalable SQL transformations and governed metric tables
  • Data Scientists — need distributed feature engineering and model scoring workflows
  • Software Engineers — need to build maintainable Python jobs for data products
  • Analytics Managers — need to assess pipeline design, controls and delivery risks

Skills and tools covered

PySpark data engineeringDistributed SQL analysisData quality testingSpark performance tuningBatch pipeline designAnalytics governance

Tools and standards

Python, Apache Spark, Delta Lake, Apache Airflow

How the course runs

Training methodology

The course uses short instructor briefings followed by guided case work in Python, pandas, PySpark and Spark SQL. Participants inspect realistic transaction, service and operational datasets; define quality rules; build transformations; and review query plans and pipeline controls. Group discussions examine trade-offs between cost, freshness, reliability and privacy. Trainers provide code walkthroughs, peer review checkpoints and structured application planning. The final capstone brings ingestion, transformation, optimisation, governance and communication into one assessed work product.

Requirements and prerequisites

Participants should be comfortable writing basic Python, including functions, lists, dictionaries, loops and DataFrame operations, and should be able to read straightforward SQL queries. Experience with pandas, relational data or reporting is useful. Participants should understand tables, columns, primary keys, joins and common data-quality issues. No previous Apache Spark, Hadoop, cloud platform, machine learning or streaming experience is required. The course explains distributed processing concepts before applying PySpark. Participants do not need advanced mathematics, but should be comfortable interpreting percentages, averages and simple model-performance measures.

A typical training day

08:30 – 10:30First session
10:30 – 10:45Refreshment break
10:45 – 12:30Second session
12:30 – 13:30Lunch and networking
13:30 – 15:00Third session
15:00 – 15:15Refreshment break
15:15 – 16:30Workshop and daily review

Live online deliveries follow the same structure in East Africa Time, with shorter screen blocks and longer breaks.

What the fee includes

  • Instruction by a practitioner facilitator
  • Full course workbook and materials
  • Exercise files, templates and case studies
  • Refreshments and lunch on classroom deliveries
  • Certificate of completion
  • Post-course application plan

Frequently asked questions

You should be able to write basic Python and read simple SQL queries. Prior Spark, Hadoop, cloud platform or machine learning experience is not required.

Bring a laptop capable of running a current web browser and Python development tools where classroom arrangements require it. Pre-course joining instructions specify any required accounts, software and access details.

It is designed for analysts, engineers, BI developers, data scientists and analytics managers working with growing data volumes. It is particularly relevant when teams need to move from desktop analysis to distributed processing.

Standard Python analysis courses usually focus on pandas, visualisation and smaller datasets. This course includes those foundations but concentrates on PySpark, distributed storage, performance tuning, pipeline reliability and governance.

Participants can apply the methods to reporting pipelines, customer analytics, fraud monitoring, service operations, risk data and other high-volume workloads. The capstone documentation and reusable templates provide a starting point for an internal use case.

The first week establishes Python data preparation, quality controls, Spark processing and storage design. The second week focuses on optimisation, production pipelines, streaming, modelling, governance, communication and the final capstone; each day runs 08:30 to 16:30 with about 6.5 contact hours.

Questions about this course?

Ask about dates, fees, group bookings or running it for your team. Our training team replies by email.