Compression Evaluation and Data Analysis

This section covers column-level compression evaluation, memory-sizing accuracy, and table analysis/scanning.

Consider the following points when evaluating compression and analyzing table data for memory sizing:

  • The compression evaluation considers only individual columns, not column groups. This is because:
    • column groupings are determined by the types of queries that are run, and the utility has no knowledge of those queries, and
    • evaluating all possible groupings is a >> N! problem space, requiring an enormous amount of computation time.
  • The degree of compression that can be achieved depends primarily on the data, including the sizes of the data types, the actual values stored, and the number of distinct values. Consequently, the TimesTen ttSize utility cannot make a meaningful prediction of memory usage for empty tables that use compression. In contrast, the estimates generated by ttImportFromOracle are based on an analysis of the actual data and are therefore generally much more accurate than those obtained by running ttSize against empty tables.
  • If an Oracle database table is scanned for row count determination, type mapping, or compression evaluation then all necessary analysis is performed in a single scan. No table is scanned more than once. Parallel scan is used to expedite the data analysis.