Before we learn about Zonemaps, it’s important to understand below two terms:
(1) Extent: Smallest unit of disk allocation on a SPU/Disk. 1 Extent = 3 MB
(2) 1 page = 128 KB. An Extent is a combination of 24 pages.
What are Zonemaps?
- Automatically created persistent internal tables
- For each extent, these internal tables have the details of (zone map’s supported) column’s minimum & maximum values. i.e., zone maps summarize the range of column data for each page and extent
- Zone maps reduce disk scan operations by eliminating unnecessary extents
- Less disk scan operations è High Throughput & High response time
- Zone maps supported columns (by default): date, timestamp, byteint, smallint, integer, and Bigint
- Zone maps are much beneficial for nearly ordered data. For example: Historical data/call records/web logs/financial transactions
When page granular level zonemaps introduced?
NPS 7.0 introduced page granular zone maps (zone maps extend down to 128KB pages instead of only 3MB extents, effectivly 24 times more detailed (24 times more performance ? )