Zone maps

This article explains how to use zone maps for partition pruning in Exasol.

Introduction

Zone maps is a new performance feature in Exasol that allows the database to decrease the I/O and computation cost of certain queries. This feature is also known as partition pruning.

Exasol distributes table data across nodes, where each node logically splits the table into multiple contiguous-rows objects. Each such object, consisting of a partial span of the total table rows, is called a segment. Each segment typically contains data that was inserted around the same time.

A segment is a logical construct, not physical. Data is still physically stored on disk in a columnar fashion.

A zone map is a metadata layer on these segments. With zone maps enabled on a column, each segment has an associated zone record for that column, which contains some summary information about that column-segment including the minimum and maximum values contained within.

Using the zone record, the database determines if data in a segment for a particular column cannot satisfy a predicate, for example, column_date > 2023-01-01. In this case, data processing can skip the whole segment, avoiding I/O and CPU costs. This can improve performance on many queries.