Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 173|Répondre: 0

[Pourboires] Compression des lignes de tables et compression de pages dans la base de données SQL Server

[Copié le lien]
Publié sur 09/01/2026 11:20:06 | | | |
Exigences : Dans la base de données SQL Server, il existe une table (par exemple, table de log, table de log de requêtes) qui occupe un très grand espace disque, peut-être des centaines de Go, comment réduire l’utilisation de l’espace de table ? La compression des données (économie d’espace) peut être activée pour le texte très répétitif (par exemple, HTML, JSON, journaux).

Compression ROW

La compression modifiera le stockage physique des données, mais pas la structure logique des données. Le processus de compression de ligne :

Identifiez le type de données de chaque colonne et convertissez-le en longueur variable
Enfin, la quantité de requêtes d’espace de stockage est réduite à la demande réelle
Après compression, la quantité de données stockées sur chaque page augmente
Après compression, réduisez la quantité de métadonnées
Par exemple, si le type de données d’une colonne est smallint, le système alloue par défaut 2 octets
Mais en réalité, un seul octet d’espace est utilisé, et si la compression est activée sur la table, elle peut être allouée à la demande

Compression PAGE

La compression de page effectue des opérations supplémentaires pour améliorer la compression des lignes
Opérations principales : compression de ligne, compression de préfixe, compression de dictionnaire

Consommation CPU : compression PAGE > compression de lignes

Test

Créez une nouvelle table Users1 et Users2, insèrent toutes deux 100 000 données, et le script sql est le suivant :
Pour voir l’espace d’occupation de la table, qui est tous de 3,27 Mo, la commande est la suivante :
Comme montré ci-dessous :



Pour voir l’état de compression de la table Users2, la commande est la suivante :
Comme montré ci-dessous :



sp_estimate_data_compression_savingsEstimez les économies qui peuvent être réalisées lorsque vous activez des tables ou partitions pour les lignes, pages, magasins de colonnes, archives de colonnes ou compression XML. La commande est la suivante :
La sortie est la suivante :
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)
Utilisateurs2 dbo 1 1 3368 1296 3448 1328

size_with_current_compression_setting (KB) 3368 KB L’indice occupe ≈ 3,29 Mo avec les réglages de compression actuels
size_with_requested_compression_setting (KB) 1296 Ko Empreinte estimée ≈ 1,27 Mo si vous activez la nouvelle méthode de compression demandée, telle que PAGE ou ROW
Pour exécuter la compression de page, la commande est la suivante :
Comparaison des effets :Le tableau Users2 est de 3,27 Mo avant la compression et de 1,23 Mo après compression, comme montré dans la figure ci-dessous :



La visualisation est la suivante :



Référence:

La connexion hyperlientérée est visible.
La connexion hyperlientérée est visible.
La connexion hyperlientérée est visible.




Précédent:Problème d’unicité de champ de suppression progressive (tombod) de base de données
Prochain:Windows Defender Credential Guard n’autorise pas l’utilisation des identifiants enregistrés
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com