15.00 - Number of Hash Buckets Per System - Teradata Database

Teradata Database Design

prodname
Teradata Database
vrm_release
15.00
category
User Guide
featnum
B035-1094-015K

Number of Hash Buckets Per System

A hash map defines the correspondence between a hash bucket and an AMP, mapping specific hash buckets to specific AMPs. There are either 65,536 or 1,048,576 hash buckets in the map, divided as evenly as possible among the AMPs on the system (see “The Problem of Skew” on page 230 for information about the importance of distributing rows evenly among the AMPs).

The size of a hash bucket is related to the number of hash buckets available to the system, as the following table indicates.

 

FOR systems with this many hash buckets …

THE size of each bucket is this many bits …

                                       65,536

16

                                  1,048,576

20

The number of hash buckets for a system is defined by the following DBS Control parameters (see Utilities: Volume 1 (A-K)).

  • CurHashBucketSize
  • This parameter specifies the number of bits used to identify a hash bucket in the current system configuration. You cannot change it.

    The default width for new installations and for systems that are already using 20‑bit hash buckets is 20 bits.

  • NewHashBucketSize
  • The System Initializer (sysinit) and Reconfiguration (reconfig) utilities use this parameter to modify the number of bits used to identify a hash bucket. If the values for CurHashBucketSize and NewHashBucketSize differ, either sysinit or reconfig reads the value for NewHashBucketSize and converts the hash bucket size to that width.

    Specify this value only when you want to change the system configuration. The reconfig utility or the sysinit utility copies the value of NewHashBucketSize over the current value for CurHashBucketSize when the reconfig or sysinit job completes.

    The default value for new installations and for systems that are already using 20‑bit hash buckets is 20 bits.

    If you upgrade a system that currently uses 16‑bit hash buckets, the system continues to use 16‑bit hash buckets unless you set the value for NewHashBucketSize to 20 and then run either the System Initializer utility or the Reconfiguration utility to change it. For more information on sysinit and reconfig, see Support Utilities.

    If you want your system to continue to use 16‑bit hash buckets, be sure the NewHashBucketSize parameter is set to 16 before you run either the sysinit or reconfig utility.