Table of Contents

Search

  1. Preface
  2. Introduction
  3. Defining a System
  4. Flattening IDTs
  5. Link Tables
  6. Loading a System
  7. Static Clustering
  8. Simple Search
  9. Search Performance
  10. Miscellaneous Issues
  11. Limitations
  12. Error Messages

Flattening Process

Flattening Process

Denormalized rows are read using the Denormalized-View and then sorted by the flattening keys.
The sorted data is used to build IDT rows. Data is moved from denormalized rows into an IDT row. An IDT row is written out either
  • at the break (change) of a flattening key value, or
  • when the IDT row is full
The latter will occur when a repeating field is full. If more data arrives with the same key value, additional IDT rows are built with the same key value.
The construction phase also verifies that non-repeating fields have the same value in all denormalized rows because it is not possible to store more than one value. An incorrect design or selection of the flattening keys can result in this situation. If this occurs the load will issue warnings similar to this:
Warning: Illegal break in denormalized record n, field f: ’xxx’
Flattening process uses the default values for threads and memory that are built into sorting routine. User can set the environment variables with appropriate values, in order to get better load/sort performance.
For example, to set 16 threads and a 1 GB sort buffer
SSASORTOPTS=:sortnthreads+16 SSASORTMEM=1g

Environment Variables

SSASORTOPTS
The above variable is to define the sorting options that can be used.
SSASORTMEM
This is used to define the maximum amount of memory to be used by IIR-SORT. It accepts the sizes in bytes/KB/MB/GB.
SSASORTMEM=n[k|m|g]
n
represents the number of allocation units
k
Kilo-bytes (KB)
m
Mega-bytes (MB)
g
Giga-bytes (GB)
Note that the actual size of each extent is actually one less that the size nominated by this parameter.

0 COMMENTS

We’d like to hear from you!