
This chapters looks into the course structure
Explore how cloud computing delivers services over the internet on the Azure platform, including compute, data stores, and Azure virtual machines for hosting applications.
Discover Azure, a leading cloud computing platform offering virtual machines, Azure Kubernetes Service, AI services, and App Service, with steps to create an Azure account.
This chapters looks into a quick tour of the Azure Portal
This chapters looks into understanding data
This chapters looks into a lab on Azure storage accounts
Create and manage a container in an Azure storage account, upload a CSV as a blob, view the blob's URL, and enable anonymous blob read access for testing.
Demonstrates a Python program using pandas to access and read a CSV file stored in an Azure storage account, with setup in Visual Studio Code.
This chapters looks into Azure Data Lake Gen-2 storage accounts
This chapters looks into a Lab on creating Azure Data Lake Gen2 storage accounts
This chapters looks into using Power BI to view your data
This chapters looks has all the code for this section
This chapters looks into the section introduction
This chapters looks into the internals of a database
This chapters looks into setting up a new Azure SQL database
Learn how to download, install, and start Azure Data Studio on macOS, connect to Microsoft SQL Server, and explore the appdb database and its tables.
This chapters looks into the T-SQL Select clause
This chapters looks into the T-SQL Where clause
This chapters looks into the T-SQL Order by clause
This chapters looks into the T-SQL Aggregate functions
This chapters looks into the T-SQL Group by clause
Learn how to use the with clause to create common table expressions and reuse a derived result set in subsequent SQL statements, without creating a database object.
This chapters looks has all the code for this section
This chapters looks into the Section introduction
Explore the cost breakdown of using Azure Synapse, focusing on the dedicated SQL pool and storage, and learn how pausing compute can minimize expenses.
This chapters looks into Azure Synapse Analytics
This chapters looks into creating an Azure Synapse workspace
This chapters looks into the different compute options
This chapters looks into a lab on external tables - Part 1
This chapters looks into a lab on external tables - Part 2
This chapters looks into creating a SQL Pool
Define external tables in a dedicated sql pool to load csv data from an Azure data lake, using the appropriate external data source and format, then query the loaded data.
Learn how to create an external table over a Parquet-based file in a dedicated SQL pool using native driver, data source, and SAS-based token.
Create an external table for Azure Data Lake Gen2 and read data across folders. Exclude hidden items starting with underscore or period from being read by PolyBase or Hadoop.
This chapters looks into loading data into a Dedicated SQL Pool
This chapters looks into copying data using the COPY command
This chapters looks into copying data using the COPY command with Parquet data
Demonstrate copying the sales order detail table from an Azure SQL database to a dedicated SQL pool via a data pipeline, covering connection setup, column mapping, and monitoring.
This chapters looks into designing a data warehouse
This chapters looks into dimension tables
This chapters looks into building a fact table
This chapters looks into building a dimension table
This chapters looks into transferring data into the SQL Pool
This chapters looks into Power BI for the star schema
This chapters looks into understanding Azure Synapse Architecture
This chapters looks into understanding table types
This chapters looks into hash-distributed tables
This chapters looks into creating replicated tables
This chapters looks into designing your tables
This chapters looks into surrogate keys for dimension tables
This chapters looks into slowly changing dimensions
Explore how Azure Synapse distributes data with hash, round robin, and replicated options and default clustered columnstore indexes for fast fact-table queries. Learn when heap and non-clustered indexes optimize performance.
Evaluate load methods: copy command, PolyBase, and bulk insert for a dedicated SQL pool; bulk insert is simple but slower, while PolyBase enables external tables and higher throughput.
Recreate a table from parquet-based pool activity log data in Azure Data Lake Gen2, converting the time column to datetime, then implement range-based partitions with April and May 2024 boundaries.
This chapters looks into the case statement
This chapters looks into the Spark pool
This chapters looks into a section introduction
Evaluate costing in Azure Data Factory by analyzing mapping data flow and data flow debug, and optimize subscription spend by turning off unused infrastructure.
This chapters looks into the Extract, Transform and load process
This chapters looks into Azure Data Factory
This chapters looks into starting with Azure Data Factory
This chapters looks into loading a csv file into Azure Synapse via Azure Data Factory
This chapters looks into generating a parquet file
This chapters looks into a review on what has been done so far
This chapters looks into using a query for data transfer
This chapters looks into Mapping Data Flow
This chapters looks into mapping data flow for a fact table
Create a pipeline that uses a mapping data flow to move data from Azure SQL to the fact_sales table, with a staging service and an Apache Spark cluster for transformations.
This chapters looks into mapping data flow for the Dimension Customer table
This chapters looks into mapping data flow for the Dimension Product table
This chapters looks into Surrogate keys
Explore the data flow debug feature in Azure Data Factory's mapping data flow, enabling end-to-end and step-by-step validation with an on-demand debug environment and data previews.
Explore cache sink in a mapping data flow within Azure Data Factory, storing temporary data on the Spark cluster and adding a surrogate key CustomerSK to the dimension customer table.
This chapters looks into converting parquet files to JSON files
This chapters looks into loading JSON data into the SQL Pool
This chapters looks into the self-hosted integration runtime
This chapters looks into setting up nginx for the self-hosted runtime environment
This chapters looks into setting up the runtime
This chapters looks into the copy activity
This chapters looks into the mapping data flow for the copy activity
Use a conditional split in a new mapping data flow to filter ActivityLog.csv by Resourcegroup = app-grp, creating app-grp and others streams, and load the app-grp data into PoolActivityLog.
Explore schema drift in mapping data flows, enable drift handling and infer drifted column types, and use auto mapping to align source schemas with destinations, noting errors with SQL destinations.
Pass through get metadata to enumerate blob items, loop with a for each activity, and copy each file using a parameterized data set to a dedicated SQL pool.
Explore using the lookup activity in a data engineering pipeline to call a stored procedure, fetch the first row, set pipeline variables, handle errors, and use defaults.
Define a storage events trigger to run a pipeline that ingests csv files from a data lake gen2, converts to parquet, and loads into a dedicated sql pool.
Explore the tumbling window trigger in data pipelines, see how it processes files within fixed five-minute windows, avoids duplicates, supports backfill with last-modified incremental loads, and contrasts with schedule-based triggers.
Create a Git-backed Azure Data Factory pipeline with a copy data activity to move delimited text from a data lake to Synapse, saving the json and publishing arm templates.
This chapters looks into Batch and Real-time processing
This chapters looks into Azure Event Hubs
This chapters looks into creating an Event Hub instance
This chapters looks into Azure Stream Analytics
This chapters looks into a Stream Analytics job
Define the stream analytics input from Azure Event Hub and stream data into a table in a dedicated SQL pool in Azure Synapse. Use JSON serialization for the input data.
Define output for a stream analytics job by routing event hub input to a SQL pool in Synapse, creating a table with make, model, vehicle type, state, toll amount.
Define the stream analytics query to select make, model, vehicle type, state, and toll amount from the event input and write to VehicleTollBooth, then test, save, and start the job.
This chapters looks into a review on what we have seen so far
Configure diagnostic settings to stream Azure Data Lake Gen 2 storage logs and metrics to an event hub or log analytics, including read, write, and delete operations.
Activate and configure Azure Event Hubs Capture to persist streaming data to Azure Blob Storage or Data Lake using Avro, Parquet, or Delta Lake formats; manage tier and scheduling.
Debug your Azure Stream Analytics jobs by understanding json data formats, validating input and output, and using the job diagram to diagnose errors and monitor the job.
Discover how windowing functions in Azure Stream Analytics segment data into non-overlapping time windows, focusing on the tumbling window to support time-based aggregations over streaming events.
This chapters looks into timing windows
Learn to implement a tumbling window in Azure Stream Analytics to aggregate events from an Azure Event Hub, computing counts of database operations grouped by ActionName and ClientIP.
This chapters looks into adding multiple outputs
Explore tumbling, hopping, and sliding windows in Azure Stream Analytics, learning how to compute counts, sums, and averages within time-based windows and when events may belong to multiple windows.
This chapters looks into reference data
Explore the NSG flow log structure stored in insights-logs, with hourly json files, nested flows and flowTuples, including macAddress, source IP, and destination IP, in Azure Data Lake Gen2.
Formulate a multi-step query for energy flow logs by defining an Azure data lake input in stream analytics, then use cross apply to flatten json arrays into records.
Direct Azure Stream Analytics outputs to the Power BI service and build reports beyond Power BI Desktop. Learn to sign up for free Power BI licenses via Microsoft Entra ID.
This chapters looks into Power BI Output
This chapters looks has all the code for this section
Explore Apache Spark fundamentals, including installation, Spark clusters and notebooks, and its integration with cloud services like Azure Databricks. Learn in-memory processing of batch and streaming data with multi-language support.
Install spark on a Windows machine by installing the Java Development Kit, configuring environment variables, setting spark home and Hadoop, and integrating vin utils to run Spark Shell.
Discover how to run Scala code in notebooks targeting Spark by installing a Scala kernel via pip and selecting it in Jupyter, with Scala's Java Virtual Machine powering Azure notebooks.
Explore Spark with Scala by building data frames from a resilient distributed dataset, defining a schema for an orders dataset, and converting an RDD to a dataframe using Spark session.
Explore Azure Synapse spark pools and Spark on Databricks, including serverless pools with compute only during sessions. Configure three nodes with 4 vcores and 32 GB each, managed by pool.
This chapters looks into creating a Spark Pool
This chapters looks into working with Notebooks
Learn to run Python-based code in a spark pool notebook by switching from Scala to PySpark, creating and displaying a data frame, and understanding driver and executor nodes.
Explore how to group results in spark dataframes using the group by method, including aggregations and counting rows per resource group, with visualization in chart view within your spark pool.
This chapters looks into writing data into the Spark Pool
This chapters looks into sharing tables
Explore Azure Databricks, built on Apache Spark, to govern data and AI through a data lake house that combines data lake and data warehouse capabilities.
Learn to read parquet data from Azure Data Lake Gen2 using Databricks, configure access with an account key, and explore secure authorization with Microsoft Entra ID and Azure Key Vault.
Create a summary data frame with group by on the spark pool and visualize it with tabular, bar, or pie charts, and compare suitable Azure services for data engineering needs.
Use the copy into command to load data from a parquet base file into a table in Azure Databricks, creating a database and log data table while merging the schema.
Stream data from Azure data lake blobs into an Azure Databricks table using delta format with append mode. Enable checkpoint location and schema merge to grow the activity log data.
Learn how to change the incoming data schema and stream it into a table by recreating the activity log table, adding a timestamp to the time column, and validating ingestion.
Query data from an Azure Synapse dedicated SQL pool using a Databricks notebook with spark.read, loading a table into a data frame and handling errors.
Learn how delta tables enable versioning with history and multiple versions, supported by auto loader for schema inference and handling new columns in source data.
Learn how to run an Azure Databricks notebook in an Azure Data Factory pipeline by configuring a shared cluster, setting IAM permissions, creating a link service, and triggering the pipeline.
Ingest data from Azure Event Hubs into Databricks by installing the Event Hubs library on a Spark cluster, configuring a connection, and streaming with Spark read stream.
Cast the Azure Event Hub body from binary to a string, then parse it as JSON to access fields like entry time, car model, and toll amount.
This chapters looks into column-level security
This chapters looks into row-level security
This chapters looks into Data Masking
This chapters looks into Azure AD Authentication
This chapters looks into creating an admin
This chapters looks into creating a user
Deploy a Windows Server 2022 virtual machine in a new resource group and virtual network, then restrict storage account access via firewall rules and connect with Azure Storage Explorer.
Securely access Azure Data Lake Gen2 from Azure Databricks by configuring Key Vault access policy, creating a Databricks secret scope, and using an application object with OAuth.
Create a Microsoft Purview account, configure the basic settings, and deploy it to a resource group. Explore integrating Purview with Azure Data Lake, Azure Synapse, and Azure Data Factory.
Register Azure Synapse in Purview by assigning access, create a Purview user, register a data source, and run a scan to capture assets.
This chapters looks into best practices for your data lake
Discover how Azure Data Lake Gen2 access tiers, including hot, cool, cold, and archive, control costs. Note minimum durations (30 days for cool, 90 for cold) and access costs.
Create an Azure Monitoring Service alert on an Azure Data Factory resource using failed pipeline runs metric, triggering when the count exceeds one, with an action group for email notification.
Learn to retain Azure Data Factory monitoring data beyond 45 days by sending logs to a Log Analytics workspace, with separate tables for pipeline, activity, and trigger runs.
Learn how to add user-defined annotations to Azure Data Factory pipelines and use them to filter monitor results by annotated values such as department, enabling targeted views of pipeline runs.
Explore common errors in Azure Data Factory pipelines and learn troubleshooting approaches. Discover how the binary copy option copies data as is to avoid delimiter errors.
Explore the monitoring features in Azure Synapse, including monitoring in Synapse Studio, tracking CPU and memory usage for dedicated and serverless SQL pools, and viewing SQL requests, pipelines, and runs.
This chapters looks into workload management
Enable result set caching in a dedicated SQL pool to reuse query results from the cache, while noting exclusions such as built-in functions, user defined functions, and large data sets.
Examine data skew in Azure Synapse dedicated SQL pool by reviewing hash vs round robin distributions and how uneven rows across 60 distributions indicate skew.
enable diagnostic settings for a dedicated SQL pool to stream SQL requests and steps to a log analytics workspace, view them in Synapse SQL pool tables, and manage the setting.
Explore how time governs Azure Stream Analytics, comparing application time, arrival time, and ingestion into data lake, and how watermark delay handles late and early events.
Explore monitoring Azure Databricks by inspecting cluster configuration, libraries, logs, spark UI, and dag visualizations, and send application logs to Azure Monitoring using a GitHub open source library.
Release v3.0 - May 2024
The entire course has been updated and refreshed. All chapters have been re-recorded. This has been done to ensure that all contents now reflect the most recent changes to the services on the Azure platform.
All course contents have also been aligned as per any changes to the course objectives.
Release v2.0 - May 2023
The entire course has been updated and refreshed. All chapters have been re-recorded. This has been done to ensure that all contents now reflect the most recent changes to the services on the Azure platform.
All course contents have also been aligned as per any changes to the course objectives.
Additional questions have been also added to the Practice Tests.
Release v1.0 Initial Release
This course is designed for students who want to attain the "Microsoft Certified: Azure Data Engineer Associate" certification
This course has contents for the Exam DP-203
The objectives covered in this course are
Design and implement data storage (40-45%)
Design and develop data processing (25-30%)
Design and implement data security (10-15%)
Monitor and optimize data storage and data processing (10-15%)
In this course students will learn about the various Azure services that pertain to Data Engineering. Few of the important aspects that students will learn along the way includes the following
What is the purpose of an Azure Data Lake Gen 2 storage account
Basics on Transact-SQL commands
How to work with Azure Synapse. This will include building a data warehouse into a dedicated SQL Pool.
How to build an ETL pipeline with the help of Azure Data Factory. There will be various scenarios on how to create mapping data flows.
How to stream data with the use of Azure Stream Analytics. You can see how SQL commands can be used for your streaming data.
Basics on the Scala programming language, and SPARK
How to work with SPARK, Scala in Azure Databricks. We will see how to work with Notebooks. We will also see how to stream data into Azure Databricks.
The different security measures and monitoring aspects to consider when working with Azure services