Teradata - Compressione

La compressione viene utilizzata per ridurre lo spazio di archiviazione utilizzato dalle tabelle. In Teradata, la compressione può comprimere fino a 255 valori distinti, incluso NULL. Poiché lo spazio di archiviazione è ridotto, Teradata può archiviare più record in un blocco. Ciò si traduce in un tempo di risposta alle query migliorato poiché qualsiasi operazione di I / O può elaborare più righe per blocco. La compressione può essere aggiunta durante la creazione della tabella utilizzando CREATE TABLE o dopo la creazione della tabella utilizzando il comando ALTER TABLE.

Limitazioni

  • È possibile comprimere solo 255 valori per colonna.
  • La colonna Indice primario non può essere compressa.
  • Le tabelle volatili non possono essere compresse.

Compressione multivalore (MVC)

La tabella seguente comprime il campo DepatmentNo per i valori 1, 2 e 3. Quando la compressione viene applicata a una colonna, i valori per questa colonna non vengono memorizzati con la riga. I valori vengono invece memorizzati nell'intestazione della tabella in ogni AMP e solo i bit di presenza vengono aggiunti alla riga per indicare il valore.

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);

La compressione multivalore può essere utilizzata quando si dispone di una colonna in una tabella di grandi dimensioni con valori finiti.