IQ UNIQUE defines the expected cardinality of a column and
determines whether the column loads as
Flat FP or
NBit. An
IQ UNIQUE(n) value
explicitly set to 0 loads the column as
Flat FP. Columns without an
IQ UNIQUE constraint implicitly load as
NBit
up to the limits defined by the
FP_NBIT_AUTOSIZE_LIMIT and
FP_NBIT_LOOKUP_MB options:
-
FP_NBIT_AUTOSIZE_LIMIT limits the number of distinct
values that load as NBit
-
FP_NBIT_LOOKUP_MB sets a threshold for the total
NBit dictionary size
-
FP_NBIT_ROLLOVER_MAX_MB sets the dictionary size for
implicit NBit rollovers from NBit to Flat
FP
-
FP_NBIT_ENFORCE_LIMITS enforces NBit
dictionary sizing limits. This option is OFF by default
Using
IQ UNIQUE with an
n value less than
the
FP_NBIT_AUTOSIZE_LIMIT is not necessary. Auto-size
functionality automatically sizes all low or medium cardinality columns as
NBit. Use
IQ UNIQUE in cases where you want to
load the column as
Flat FP or when you want to load a column as
NBit when the number of distinct values exceeds the
FP_NBIT_AUTOSIZE_LIMIT.