Initialisation instantanée de fichiers sur un lecteur partagé

8

J'ai demandé quelque chose de similaire à cela auparavant, mais auparavant j'avais posé des questions sur le déplacement des sauvegardes vers un emplacement partagé. Cette fois, je suis curieux: si je veux restaurer une base de données sur un lecteur partagé, dois-je activer IFI sur ce serveur ou simplement le serveur qui exécute SQL Server?

La raison pour laquelle je demande, c'est que je restaure une assez grande base de données et qu'elle est restée bloquée à 100% pendant les dernières heures. Le type d'attente sp_whoisactiveest:

(28472716ms) `PREEMPTIVE_OS_WRITEFILEGATHER.

La seule fois que je l' ai vu qui est quand FII est pas, mais je ne l' avoir activé sur le SQL Server, mais il n'est pas activé sur le serveur de lecteur partagé.

Chris Woods
la source

Réponses:

1

Réponse Wiki communautaire générée à partir des commentaires sur la question, de Bob Klimes , Sean Gallardy et Aaron Bertrand .


Vous devrez activer l' initialisation instantanée des fichiers (IFI) sur le serveur contenant le disque. Redémarrez SQL Server pour qu'il prenne effet.

Vous pouvez tester si IFI fonctionne sur le partage en créant une base de données sur le partage avec les indicateurs de trace 3004 et 3605 activés. La sortie est écrite dans le journal des erreurs SQL Server.

Si IFI fonctionne, il n'y aura aucune entrée pour la remise à zéro du fichier mdf.

IFI semble fonctionner avec des partages réseau, mais pour moi, la création d'une base de données de test a pris 45 secondes sur le partage et moins de 1 seconde localement. Même avec IFI activé, vous pouvez toujours rencontrer des problèmes de performances.

Paul White
la source