[SQL Server] Performance tuning : activation de l’instant file initialization

Ce billet traite de l’activation de l’instant file initialization (initialisation instantanée de fichiers).

Intérêt de l’instant file initialization

Par défaut, les fichiers MSSQL (MDF/NDF comme LDF) sont initialisés de sorte qu’elles puissent écraser, sur le disque, toutes les données des fichiers précédemment supprimées en « remplissant » leur taille à 0.

En soi, cette situation n’est pas problématique… sauf dans le cas où les fichiers sont très volumineux (ce qui est souvent le cas de datawarehouses, par exemple), vu à quel point l’initialisation peut s’avérer très longue.

L’initialisation de fichiers de données MSSQL intervient généralement durant ces différents cas de figure :

  • Création d’une base de données.
  • Ajout de fichiers (ou filegroups)
    à une base de données.
  • Augmentation de la taille d’un fichier (i.e., autogrow).
  • Restauration d’une base de données ou d’un groupe de fichiers.

Pour accélérer l’initialisation des fichiers (en particulier quand ceux-ci sont susceptible d’atteindre une bonne centaine de Go), il suffit justement de configurer correctement les paramètres de sécurité locale du compte de service utilisé par l’instance MSSQL concernée. Et pour ce faire, il faut aller dans le SecPol (en tapant « SecPol.msc » dans Démarrage->Exécuter, par exemple) et y ajouter le compte de service MSSQL au sein de l’autorisation Perform Volume Maintenance Tasks sous Users Rights Assignements. Cette opération activera ce qu’on appelle l’Instant File Initialization (ou Initialization des fichiers de bases de données).

Activation

Pour accélérer l’initialisation des fichiers de bases de données (en particulier quand ceux-ci sont susceptibles d’atteindre une bonne centaine de Go), lors de la création ou de la modification de leurs fichiers de données et/ou de sauvegardes, il est recommandé de configurer les paramètres de sécurité locale (Security Policy) du compte de service utilisé par l’instance MSSQL pour que cette dernière puisse supporter cette fonctionnalité.

Pour activer la fonctionnalité d’initialisation instantanée de fichiers, suivez les étapes suivantes :

  • Allez dans le SecPol en tapant secpol.msc dans la barre de démarrage ou dans Exécuter suivant la version de Windows utilisée.
  • Accédez aux options de configuration des tâches de maintenance de volume :

  • Ajout du compte de service MSSQL pour la réalisation de tâches de maintenance de volume :

Après ajout du compte de service MSSQL, cliquez sur OK pour valider la configuration (aucun redémarrage de l’OS n’est requis).

 

Publicités

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s