cancel
Showing results for 
Search instead for 
Did you mean: 
Data Engineering
Join discussions on data engineering best practices, architectures, and optimization strategies within the Databricks Community. Exchange insights and solutions with fellow data engineers.
cancel
Showing results for 
Search instead for 
Did you mean: 

What is a Data Skipping in Delta Lake?

gowri_databrick
New Contributor

Hi everyone,

I’m learning about Delta Lake performance and came across data skipping.

I understand that it can help Databricks avoid reading unnecessary data when running queries, but I’d like to understand its purpose more clearly.

For example, if an orders table contains millions of records and I query only orders from a particular date, how can data skipping help reduce the amount of data that needs to be read?

What is the main purpose of data skipping, and how does it help improve query performance?

Thanks!

1 REPLY 1

balajij8
Esteemed Contributor II

@gowri_databrick Data skipping is a built in optimization that uses file-level statistics (minimum values, maximum values and null counts) to automatically skip reading data files that don't contain relevant data for your query. When you write data to a Delta table, Delta Lake automatically collects these statistics for each column in every data file. These statistics act as a smart index that helps Databricks determine which files need to be read and which can be safely ignored. In your orders table example, when you query for a specific date, engine checks the min/max date statistics for each file without opening them. If a file's date range doesn't overlap with the filter condition, that entire file is skipped - Databricks never reads it from storage. This dramatically reduces I/O, especially on large tables where the filter might eliminate large amount of the data. The performance improvement is automatic and requires no manual tuning, though you can enhance it further with other techniques to co locate related data in the same files. More details here