Teradata - Komprimierung

Die Komprimierung wird verwendet, um den von den Tabellen verwendeten Speicher zu reduzieren. In Teradata kann die Komprimierung bis zu 255 verschiedene Werte einschließlich NULL komprimieren. Da der Speicher reduziert wird, kann Teradata mehr Datensätze in einem Block speichern. Dies führt zu einer verbesserten Antwortzeit für Abfragen, da jede E / A-Operation mehr Zeilen pro Block verarbeiten kann. Die Komprimierung kann bei der Tabellenerstellung mit CREATE TABLE oder nach der Tabellenerstellung mit dem Befehl ALTER TABLE hinzugefügt werden.

Einschränkungen

  • Pro Spalte können nur 255 Werte komprimiert werden.
  • Die Primärindexspalte kann nicht komprimiert werden.
  • Flüchtige Tabellen können nicht komprimiert werden.

Multi-Value-Komprimierung (MVC)

In der folgenden Tabelle wird das Feld DepatmentNo für die Werte 1, 2 und 3 komprimiert. Wenn eine Spalte komprimiert wird, werden die Werte für diese Spalte nicht in der Zeile gespeichert. Stattdessen werden die Werte in jedem AMP im Tabellenkopf gespeichert, und der Zeile werden nur Präsenzbits hinzugefügt, um den Wert anzuzeigen.

CREATE SET TABLE employee ( 
   EmployeeNo integer, 
   FirstName CHAR(30), 
   LastName CHAR(30), 
   BirthDate DATE FORMAT 'YYYY-MM-DD-', 
   JoinedDate DATE FORMAT 'YYYY-MM-DD-', 
   employee_gender CHAR(1), 
   DepartmentNo CHAR(02) COMPRESS(1,2,3) 
) 
UNIQUE PRIMARY INDEX(EmployeeNo);

Die mehrwertige Komprimierung kann verwendet werden, wenn Sie eine Spalte in einer großen Tabelle mit endlichen Werten haben.