Book Image

Optimizing Databricks Workloads

By : Anirudh Kala, Anshul Bhatnagar, Sarthak Sarbahi
Book Image

Optimizing Databricks Workloads

By: Anirudh Kala, Anshul Bhatnagar, Sarthak Sarbahi

Overview of this book

Databricks is an industry-leading, cloud-based platform for data analytics, data science, and data engineering supporting thousands of organizations across the world in their data journey. It is a fast, easy, and collaborative Apache Spark-based big data analytics platform for data science and data engineering in the cloud. In Optimizing Databricks Workloads, you will get started with a brief introduction to Azure Databricks and quickly begin to understand the important optimization techniques. The book covers how to select the optimal Spark cluster configuration for running big data processing and workloads in Databricks, some very useful optimization techniques for Spark DataFrames, best practices for optimizing Delta Lake, and techniques to optimize Spark jobs through Spark core. It contains an opportunity to learn about some of the real-world scenarios where optimizing workloads in Databricks has helped organizations increase performance and save costs across various domains. By the end of this book, you will be prepared with the necessary toolkit to speed up your Spark jobs and process your data more efficiently.
Table of Contents (13 chapters)
1
Section 1: Introduction to Azure Databricks
5
Section 2: Optimization Techniques
10
Section 3: Real-World Scenarios

Understanding Spark SQL optimizations

In this section, we will learn about how to write efficient Spark SQL queries, along with tips to help optimize the existing SQL queries:

  • Avoid using NOT IN in the SQL queries, as it is a very expensive operation.
  • Filter the data before performing join operations by using the WHERE clause before joining the tables.
  • Mention the column name when using the SELECT clause instead of giving a * to select all of them. Try to use the columns required for operations instead of selecting all of them unnecessarily.
  • Avoid using LIKE in the WHERE clause, as it is another expensive operation.
  • Try not to join the same set of tables multiple times. Instead, write a common table expression (CTE) using the WITH clause to create a subquery, and use it to join the tables wherever necessary.
  • When joining the same table for different conditions, use the CASE statements.

In the next and final section of this chapter, we will learn about...