ANALYZE COMPRESSION - Amazon Redshift

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

ANALYZE COMPRESSION

Esegue l'analisi della compressione e produce un rapporto con la codifica di compressione suggerita per le tabelle analizzate. Per ogni colonna, il rapporto include una stima della potenziale riduzione dello spazio su disco rispetto alla RAW codifica.

Sintassi

ANALYZE COMPRESSION [ [ table_name ] [ ( column_name [, ...] ) ] ] [COMPROWS numrows]

Parametri

table_name

Puoi analizzare la compressione di tabelle specifiche, incluse le tabelle temporanee. Puoi qualificare la tabella con il nome dello schema. Puoi specificare facoltativamente un table_name per analizzare una singola tabella. Se non specifichi un valore table_name, vengono analizzate tutte le tabelle nel database attualmente connesso. Non puoi specificare più di un table_name con una singola istruzione. ANALYZE COMPRESSION

column_name

Se specifichi un table_name, puoi anche specificare una o più colonne nella tabella (come un elenco separato da colonne tra parentesi).

COMPROWS

Numero di righe da utilizzare come dimensione del campione per l'analisi della compressione. L'analisi viene eseguita su righe da ciascuna sezione di dati. Ad esempio, se si specifica COMPROWS 1000000 (1.000.000) e il sistema contiene 4 slice totali, non vengono lette e analizzate più di 250.000 righe per sezione. Se COMPROWS non è specificato, la dimensione predefinita del campione è 100.000 per sezione. I valori COMPROWS inferiori al valore predefinito di 100.000 righe per slice vengono aggiornati automaticamente al valore predefinito. Tuttavia, l'analisi della compressione non produce raccomandazioni se la quantità di dati nella tabella è insufficiente per produrre un campione significativo. Se il COMPROWS numero è maggiore del numero di righe della tabella, il ANALYZE COMPRESSION comando continua ed esegue l'analisi di compressione su tutte le righe disponibili. L'utilizzo COMPROWS genera un errore se non viene specificata una tabella.

numrows

Numero di righe da utilizzare come dimensione del campione per l'analisi della compressione. L'intervallo accettato per numrows è un numero compreso tra 1000 e 1000000000 (1.000.000.000).

Note per l'utilizzo

ANALYZECOMPRESSIONacquisisce un blocco da tavolo esclusivo, che impedisce letture e scritture simultanee sulla tabella. Esegue il ANALYZE COMPRESSION comando solo quando la tabella è inattiva.

Esegui ANALYZE COMPRESSION per ottenere consigli sugli schemi di codifica delle colonne, in base a un esempio del contenuto della tabella. ANALYZECOMPRESSIONè uno strumento di consulenza e non modifica le codifiche delle colonne della tabella. La codifica suggerita può essere applicata ricreando la tabella o creando una nuova tabella con lo stesso schema. Ricreare una tabella non compressa con schemi di codifica appropriati può ridurre significativamente il footprint su disco. Questo approccio consente di risparmiare spazio su disco e migliora le prestazioni delle query per i carichi di lavoro associati all'I/O.

ANALYZECOMPRESSIONsalta la fase di analisi effettiva e restituisce direttamente il tipo di codifica originale su qualsiasi colonna designata come. SORTKEY Ciò è dovuto al fatto che le scansioni con intervalli limitati potrebbero avere prestazioni scadenti quando SORTKEY le colonne sono compresse in modo molto più elevato rispetto alle altre colonne.

Esempi

L'esempio seguente mostra la codifica e la riduzione percentuale stimata solo per le colonne della tabella: LISTING

analyze compression listing; Table | Column | Encoding | Est_reduction_pct ---------+----------------+----------+------------------- listing | listid | az64 | 40.96 listing | sellerid | az64 | 46.92 listing | eventid | az64 | 53.37 listing | dateid | raw | 0.00 listing | numtickets | az64 | 65.66 listing | priceperticket | az64 | 72.94 listing | totalprice | az64 | 68.05 listing | listtime | az64 | 49.74

L'esempio seguente analizza le SALETIME colonne QTYSOLDCOMMISSION, e della SALES tabella.

analyze compression sales(qtysold, commission, saletime); Table | Column | Encoding | Est_reduction_pct -------+------------+----------+------------------- sales | salesid | N/A | 0.00 sales | listid | N/A | 0.00 sales | sellerid | N/A | 0.00 sales | buyerid | N/A | 0.00 sales | eventid | N/A | 0.00 sales | dateid | N/A | 0.00 sales | qtysold | az64 | 83.06 sales | pricepaid | N/A | 0.00 sales | commission | az64 | 71.85 sales | saletime | az64 | 49.63