Determining Available User Table Data Space | Teradata Vantage - Determining Available User Table Data Space - Advanced SQL Engine - Teradata Database

Database Design

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
June 2020
Language
English (United States)
Last Update
2021-01-22
dita:mapPath
qby1588121512748.ditamap
dita:ditavalPath
lze1555437562152.ditaval
dita:id
B035-1094
lifecycle
previous
Product Category
Teradata Vantageā„¢

To determine available user table data space, you must take several non-user table data space allotments into account.

First you must determine how much space these allotments account for and then you must subtract them from the total available table space.

The nonuser table space allotments that must be accounted for are those in the following list.
  • Overhead space, including space reserved for allocation maps and related statistics.
  • Depot area, which includes cylinders reserved as a staging area for modified-in-place data blocks before they are written to their home disk destinations.
    Data blocks that are not modified in place are not written to the depot area.
  • Tables area, which includes the following.
    • Data Dictionary (for the WAL log and system tables)
    • Crashdumps user
    • User temporary space
    • User spool space

The following topics describe specific space requirements and provide equations with which to determine variable space requirements.

Depot Area Overhead

The Depot consists of two types of slots:
  • Large Depot slots
  • Small Depot slots

The Large Depot slots are used by aging routines to write multiple blocks to the Depot area with a single I/O.

The Small Depot slots are used when individual blocks that require Depot protection are written to the Depot area by foreground tasks.

The number of cylinders allocated to the Depot area is fixed at startup. Consult your Teradata support representative if you want to change this value.

The number of Depot area cylinders allocated is per pdisk, so their total number depends on the number of pdisks in your system. Sets of pdisks belong to a subpool, and the system assigns individual AMPs to those subpools.

Because it does not assign pdisks to AMPs, the system calculates the average number of pdisks per AMP in the entire subpool from the vconfig GDO when it allocates Depot cylinders, rounding up the calculated value if necessary. The result is then multiplied by the specified values to obtain the total number of depot cylinders for each AMP. Using this method, each AMP is assigned the same number of Depot cylinders.

The concept is to disperse the Depot cylinders fairly evenly across the system. This prevents one pdisk from becoming overwhelmed by all the Depot writes for your system.

Data Table Overhead

The system uses some amount of data space, which includes permanent, spool, and temporary space, as overhead for various purposes.

The percentage of data space required for cylinder indexes is calculated based on the following information:
  • Each cylinder has 2 cylinder indexes.
  • Each cylinder index is 32 KB (64 sectors) in size.
Therefore, 128 sectors are reserved for cylinder indexes per cylinder.
  • Each cylinder is 23,232 sectors in size.

The quantity of permanent data table space, temporary space, and spool space available on a system is also limited by the amount of disk space required by WAL to process update transactions. The amount of disk required by WAL is a function of the number of update operations being undertaken by the workloads running on the system at any given time, and waxes and wanes as a result. The more updates that are done at a time, the greater the quantity of WAL data that is produced. The amount of WAL data produced is roughly equivalent to twice the amount of transient journal information that is required for updates.

Allow space for data table overhead as listed in the following table:

Number of Cylinders Purpose
13 General

One cylinder each for the following purposes:

  • Permanent space sentinel
  • Permanent journal space sentinel

    System journals are stored either in user DBC, which is permanent space, or in the WAL log, which is not part of journal space.

  • Global temporary spool space sentinel
  • Spool space

Nine cylinders for the following purpose:

  • Write Ahead Logging

The additional cylinders for WAL are required to ensure that MiniCylPack is able to run in low disk situations to free space.

Approximately 1.25% of the available data space (minimum) Cylinder indexes
A minimum of 7% free space per cylinder Fragmentation

You must be careful not to allow too much free space for fragmentation, but you must be equally careful not to allow too little.

The most practical way to establish an optimal number of cylinders to reserve for fragmentation on your system is trial and error.

Ranges between 1 and 20 per pdisk. Depot

The number of cylinders assigned to Depot is set at startup. The value for your system can only be changed by Teradata support personnel.

Tables Area: Dictionary and Spool Space Requirements

After you determine how much space remains when overhead is accounted for, determine how much space is required for the data dictionary and spool.

You should reserve approximately 80 MB for growth of system tables and the WAL log. However, optimum space for the WAL log should be based on how many rows are dropped or updated by concurrently running transactions during your peak workload.

Tables Area: User TEMP Space Requirements

The TEMPORARY clause in the CREATE DATABASE and CREATE USER statements permits you to allocate default space within this database or user for inserting data into global temporary tables materialized by users. Note that Teradata Database always reserves temporary space prior to spool space for any user defined with this attribute.

Disk usage for a materialized global temporary table is charged against the temporary space allocation of the user who referenced the table.

Global temporary tables also require a minimum of 512 bytes from the PERM space of the containing database or user. This space is used for the GTT table header.

If no default temporary space is defined for a database, then the space allocated for any global temporary tables created in that database is set to the maximum temporary space allocated for its immediate owner.

Subtract the TEMP amount allocated to this database.

Tables Area: CRASHDUMPS User Space Requirements

Subtract the PERM amount allocated to this user. The DIP utility creates this database with a default allocation of 1 GB.

If you modified the default amount when you set up the Crashdumps user, subtract the actual current amount.

Tables Area: User Spool Space Requirements

Whenever you create a new user, reserve a minimum of 20% of user permanent space for spool space. It is better to determine the optimum amount of space according to your application environment. This takes into account such factors as average table size, protection choices, number of rows involved in commonly used transactions, and so forth.

The optimum allocation depends on your application environment. If your requirement is to perform the calculations according to the formulas provided in this section, and the calculated amount exceeds 20% of permanent space, use the actual figure plus 5%. To determine an allowance based on your applications, use the formulas in this section.

Rules for Using the Spool Space Equations

When using the spool space equations, keep the following rules in mind:
  • The equations are based on the following variables.
    • Number of rows in the spool
    • Amount of data in each row
    • Mode of select operation (Field or Record)
  • The equations only determine the space needed to return rows to the user.
  • Response rows are limited to approximately 64,000 bytes.

    If the row is longer, a row length error is reported.

  • Even if an ORDER BY clause is not included, the system creates a minimum length sort key of 8 bytes for both Record mode and Field mode select operations.
  • All descriptions of CHARACTER columns also apply to BYTE columns.
  • Be sure the NF, CF, SCF, and RDS values represent the sums of all selected or sorted columns. For example, a FORMAT phrase can cause blanks to be added, which must be figured into the total column length.

Field Mode Spool Space Sizing Equation

Use the following equation to determine the amount of usable data space for Field mode:

Usable Data Space = a(RO + RP + n(PH + NF + CF)) + b(SNF + SCF)

The following parameter definitions are used with this equation:

Parameter Definition
a Number of rows being selected.
RO Row overhead (22 bytes per row).
RP Row parcel indicators; 8 bytes per row (rec start, rec end).
n Number of columns being selected.
PH Parcel headers (4 bytes per field).
NF Formatted size of each numeric column (spaces, dollar signs, and commas should be included).
CF Formatted size of each character column.

For example, if a selected column is defined as VARCHAR(200), it takes up 200 characters even if it contains only 3 nonblank characters.

The value for CF can be less than the CREATE TABLE definition of the string only if there is a FORMAT phrase.

b Number of numeric columns in the ORDER BY clause (sort key).
SNF Sorted numeric fields (8 bytes each).
SCF Formatted size of each character column in the ORDER BY clause.

If an order operation is done on a column defined as VARCHAR(200), 200 characters are allowed, even if there are only 3 nonblank characters.

The value for CF can be less than the CREATE TABLE definition of the string only if there is a FORMAT phrase. The formatted length of the character string should be rounded up to the next even value, then 2 more bytes should be added to the number.

Record and Indicator Mode Spool Space Sizing Equation

Use the following equation to determine the amount of usable data space for Record and Indicator modes:


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

The following parameter definitions are used with this equation:

Parameter Definition
a Number of rows being selected.
RO Row overhead (12 bytes per row).
RP Row parcel indicators; 8 bytes per row (rec start, rec end).
RDS Raw data size of each field returned to the user.
b Number of numeric columns in the ORDER BY clause (sort key).
SNF Sorted numeric fields (8 bytes each).
SCF Formatted size of each character column in the ORDER BY clause.

If an order operation is done on a column defined as VARCHAR(200), 200 characters are allowed, even if the value contains only 3 nonblank characters.

The value for CF can be less than the CREATE TABLE definition of the string only if there is a FORMAT phrase. The formatted length of the character string should be rounded up to the next even value, then 2 more bytes should be added to the number.

n Number of columns being selected.
IF Record mode selects use indicator variables to represent nulls. IF is the constant 8, meaning that for each 8 columns selected, 1 byte is needed to represent a null column.

Calculating Total PERM Space Requirements

Use the following procedure to determine how much PERM space to allocate to user SysAdmin.

  1. Estimate the size of each database, as follows.
    1. Estimate the size of the primary data table, including fallback (see Sizing Base Tables, LOB Subtables, XML Subtables, and Index Subtables for instructions for how to do this) and LOB and XML subtables.

      LOB and XML values are also stored in the permanent journal, so LOB and XML column space must account for additional permanent journal append and storage costs in addition to LOB and XML subtable storage costs.

    2. Estimate the size of unique and nonunique secondary index subtables, join indexes, and hash indexes.
    3. Add the primary data table estimate and index and LOB and XML subtable estimates (including fallback) to obtain the estimated total table size.
  2. Estimate the total table storage by adding together the space estimates of all table sizes (Substeps a, b, and c). Use this sum for step 3.
  3. Estimate the space requirement for the application.
    If the calculated sum is greater than the remainder calculated in step 4, contact your Teradata sales representative to discuss a system expansion.
    1. Add 7% for fragmentation.
    2. Add extra space for spooling, TEMP space, and for variability in hashing. Although this space requirement varies according to the applications, adding 20% to 30% is usually adequate if you do not use permanent journaling.
    3. Estimate the size of each journal table per database.
    4. Note that if journaling is used, the extra space requirement depends on two factors:
      • Size of the data tables that write to that journal
      • Number of changes applied to those tables before the journal table is dropped
    5. Add the sums calculated for steps 1 through 4 and use their sum for the calculation in step 5.
    6. For each disk, add 3 cylinders per disk as spaces and allow 2% of the formatted space for cylinder indexes.
  4. Subtract the amount of space needed to accommodate user DBC contents plus your maximum WAL log from the user DBC PERM space.

    Specify about 80 MB for the growth of system tables and the WAL log plus another 5% of the current PERM space for spool growth.

    Use the remainder for step 5.

  5. If possible, subtract the sum of step 3 from the result of step 4.
  6. Deduct the number of cylinders that make up the default free space specified by the DBS Control record for operations that use the percent freespace (FSP) value.

    For example, if your FSP is set to 15, deduct an additional 15%.

    If you plan to create large tables with a freespace percentage greater than the GDO default, then use the larger percentage.

    For example, if you define your largest tables with an FSP of 30, then deduct an additional 30%.

    The remainder is the amount of PERM space you should allocate to the SysAdmin user.

Table sizing is normally the responsibility of Teradata field support personnel.