Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 173|Risposta: 0

[Consigli] Compressione delle righe delle tabelle e delle pagine del database SQL Server

[Copiato link]
Pubblicato su 09/01/2026 11:20:06 | | | |
Requisiti: Nel database SQL Server esiste una tabella (ad esempio, tabella log, tabella log richieste) che occupa uno spazio disco molto grande, magari centinaia di GB, come ridurre l'uso dello spazio delle tabelle? La compressione dei dati (risparmio di spazio) può essere abilitata per testi altamente ripetitivi (ad esempio, HTML, JSON, log).

Compressione ROW

La compressione cambierà la memorizzazione fisica dei dati, ma non la struttura logica dei dati. Il processo di compressione delle linee:

Identifica il tipo di dato di ogni colonna e convertilo in una lunghezza variabile
Infine, la quantità di spazio di archiviazione ridotta alla domanda reale
Dopo la compressione, la quantità di dati memorizzati su ogni pagina aumenta
Dopo la compressione, riduci la quantità di metadati
Ad esempio, se il tipo di dato di una colonna è smallint, il sistema alloca di default 2 byte
Ma in realtà, viene utilizzato solo 1 byte di spazio e, se la compressione è abilitata sulla tavola, può essere allocata su richiesta

Compressione PAGE

La compressione delle pagine esegue operazioni aggiuntive per migliorare la compressione delle righe
Operazioni principali: compressione di linea, compressione del prefisso, compressione del dizionario

Consumo CPU: compressione PAGE > compressione delle righe

Test

Crea una nuova tabella Users1 e Users2, inseriscono entrambe 100.000 pezzi di dati, e lo script sql è il seguente:
Per visualizzare l'occupazione dello spazio della tabella, tutti di 3,27 MB, il comando è il seguente:
Come mostrato di seguito:



Per visualizzare lo stato di compressione della tabella Users2, il comando è il seguente:
Come mostrato di seguito:



sp_estimate_data_compression_savingsStima i risparmi che possono verificarsi abilitando tabelle o partizioni per righe, pagine, archivi di colonne, archivi di colonne o compressione XML. Il comando è il seguente:
L'output è il seguente:
object_name schema_name index_id partition_number size_with_current_compression_setting(KB) size_with_requested_compression_setting(KB)        sample_size_with_current_compression_setting(KB) sample_size_with_requested_compression_setting(KB)
Utenti2 dbo 1 1 3368 1296 3448 1328

size_with_current_compression_setting (KB) 3368 KB L'indice occupa ≈ 3,29 MB con le impostazioni di compressione attuali
size_with_requested_compression_setting (KB) 1296 KB Ingombro stimato ≈ 1,27 MB se abiliti il nuovo metodo di compressione richiesto, come PAGE o ROW
Per eseguire la compressione della pagina, il comando è il seguente:
Confronto degli effetti:La tabella Users2 è di 3,27 MB prima della compressione e di 1,23 MB dopo la compressione, come mostrato nella figura sottostante:



La visualizzazione è la seguente:



Riferimento:

Il login del link ipertestuale è visibile.
Il login del link ipertestuale è visibile.
Il login del link ipertestuale è visibile.




Precedente:Problema di unicità del campo di cancellazione soft (tombod) del database
Prossimo:Windows Defender Credential Guard non consente l'uso delle credenziali salvate
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com