Administrateur SAP HANA - Compression de données

À l'aide des tables de stockage de colonnes SAP, vous pouvez effectuer une compression de données jusqu'à 11 fois, ce qui se traduit par une solution économique pour stocker plus de données dans la base de données HANA. Les tables de stockage de colonnes fournissent également un accès aux données, une recherche et des calculs complexes plus rapides.

Le rapport entre la taille des données non compressées et la taille des données compressées est appelé Compression Factor. La taille de la table compressée est la taille occupée par la table dans la mémoire principale de la base de données SAP HANA.

Vérifier la compression d'une table à colonnes

À l'aide de SAP HANA Studio, vous pouvez connaître l'état de compression d'une table de stockage de colonnes ainsi que le facteur de compression. Pour trouver les détails de la compression, vous devez d'abord charger la table en mémoire.

Pour charger une table dans la mémoire SAP HANA, vous devez avoir -

  • System privilege - ADMINISTRATION DE LA TABLE

  • Object privilege - MISE À JOUR pour la table ou le schéma dans lequel se trouve la table

Vous pouvez également charger une table à l'aide de la commande SQL. Ouvrez la console SQL et exécutez l'instruction suivante -

LOAD <table_name>  
UNLOAD <table_name>

Notez que lorsque vous chargez une table, elle charge les données complètes ainsi que le stockage delta dans la mémoire principale du système SAP HANA.

Pour effectuer la compression des données, exécutez la commande SQL suivante pour vérifier les propriétés de compression des données.

SELECT SCHEMA_NAME, TABLE_NAME, COLUMN_NAME, COMPRESSION_TYPE, LOADED from  
PUBLIC.M_CS_COLUMNS where SCHEMA_NAME = '<your_schema>' and TABLE_NAME = '<your_table>'

Vous pouvez vérifier la sortie dans l'onglet Résultat.

Pour vérifier le taux de compression d'une table, vous pouvez accéder à la définition de table. Accédez aux informations d'exécution.

Pour voir le taux de compression, accédez à l'onglet Colonnes. Vous pouvez voir le taux de compression dans la colonne Main Size Compression Ratio [%].

Compresser une table manuellement dans SAP HANA

Il est également possible de compresser manuellement une table dans le système SAP HANA en exécutant l'instruction SQL suivante.

UPDATE "table_name" WITH PARAMETERS ('OPTIMIZE_COMPRESSION' = 'YES')

Cela conduit à décider si une compression est nécessaire ou si une compression existante peut être optimisée. Dans ce scénario, le système HANA utilise l'algorithme de compression le plus approprié.

Lorsque vous exécutez la commande SQL ci-dessus, l'état de la compression reste le même. Vous pouvez également forcer la base de données à réévaluer la compression à l'aide de l'état SQL suivant:

UPDATE "AA_HANA11"."SHOP_FACTS" WITH PARAMETERS ('OPTIMIZE_COMPRESSION' = 'FORCE')