Book Image

Business Intelligence with Databricks SQL

By : Vihag Gupta
Book Image

Business Intelligence with Databricks SQL

By: Vihag Gupta

Overview of this book

In this new era of data platform system design, data lakes and data warehouses are giving way to the lakehouse – a new type of data platform system that aims to unify all data analytics into a single platform. Databricks, with its Databricks SQL product suite, is the hottest lakehouse platform out there, harnessing the power of Apache Spark™, Delta Lake, and other innovations to enable data warehousing capabilities on the lakehouse with data lake economics. This book is a comprehensive hands-on guide that helps you explore all the advanced features, use cases, and technology components of Databricks SQL. You’ll start with the lakehouse architecture fundamentals and understand how Databricks SQL fits into it. The book then shows you how to use the platform, from exploring data, executing queries, building reports, and using dashboards through to learning the administrative aspects of the lakehouse – data security, governance, and management of the computational power of the lakehouse. You’ll also delve into the core technology enablers of Databricks SQL – Delta Lake and Photon. Finally, you’ll get hands-on with advanced SQL commands for ingesting data and maintaining the lakehouse. By the end of this book, you’ll have mastered Databricks SQL and be able to deploy and deliver fast, scalable business intelligence on the lakehouse.
Table of Contents (21 chapters)
1
Part 1: Databricks SQL on the Lakehouse
9
Part 2: Internals of Databricks SQL
13
Part 3: Databricks SQL Commands
16
Part 4: TPC-DS, Experiments, and Frequently Asked Questions

Understanding the SQL Warehouse architecture

The official documentation for SQL Warehouses (https://docs.databricks.com/sql/admin/sql-endpoints.html) defines a SQL Warehouse as a computation resource that lets you run SQL commands on data objects within Databricks SQL.

In practice, this computation resource manifests as a logical/virtual grouping of one or more physical clusters. The physical clusters are Apache Spark clusters, as provisioned by Databricks.

A single physical cluster follows the core architecture of Apache Spark, as shown in the following diagram:

Figure 6.1 – Physical cluster topology

As shown in the preceding diagram, two distinct processes make a cluster:

  • Driver process: Think of this process as the brain of the cluster. It is responsible for accepting users’ queries, parsing them, planning them, and coordinating their distributed execution across the worker processes available in the cluster. The driver process...