Pourriez-vous s'il vous plaît donner quelques précisions sur le message de sauvegarde du serveur SQL
Par exemple :
LA BASE DE DONNÉES DE SAUVEGARDE a traité avec succès 19696388 pages en 1945,648 secondes (79,088 Mo/sec).
Par exemple, nous avons un disque avec une base de données et nous avons un disque séparé pour la sauvegarde, cela signifie-t-il que 79 Mo/s est qu'un disque lit les données pour la sauvegarde à une vitesse de 40 Mo/sec et un autre disque écrit des données à la vitesse de 40 Mo et en somme cela nous donne une vitesse de 79 Mo/sec, est-ce correct?
Permet d'abord d'éliminer le concept de fils de lecture/écriture
Lors d'une sauvegarde, SQL Server crée un thread de lecture pour chaque volume sur lequel résident les fichiers de base de données. Le fil de lecture lit simplement le contenu des fichiers. Chaque fois qu'il lit une partie du fichier, il les stocke dans un tampon. Il y a plusieurs tampons en cours d'utilisation, donc le thread de lecture continuera à lire tant qu'il y aura des tampons libres pour écrire. SQL Server crée également un thread d'écriture pour chaque périphérique de sauvegarde pour écrire le contenu des tampons sur le disque ou la bande. Le thread d'écriture écrit les données du tampon sur le disque ou la bande. Une fois les données écrites, le tampon peut être réutilisé par le thread lecteur.
Réponse
Alors oui, pendant que les threads de lecture lisent les pages et que les threads d'écriture écrivent les pages sur le disque séparé, le temps de traitement des pages sera affecté par les deux.
Mais , cela ne signifie pas que le79.088 MB/sec
sera divisible par 2.
Cela signifie que l'opération de lecture s'exécutait à ~79.088MB/sec
et l'opération d'écriture s'exécutait également à ~79.088MB/sec
. La vitesse est déterminée par la plus lente de ces deux opérations car les deux opérations lisent et écrivent à partir de plusieurs tampons ( tant que BUFFERCOUNT
est correctement défini/n'est pas ajouté à la commande) .
En conséquence, ces tampons se remplissant trop lentement/ne sont pas effacés assez rapidement est le goulot d'étranglement en action.
Une autre façon de valider cela est de calculer le MB/sec
* durée de la sauvegarde. Cela correspondra à la taille de votre base de données moins l'espace disponible.
Test de la vitesse à laquelle vous pouvez lire
Si vous voulez connaître la quantité de données et la vitesse à laquelle elles peuvent être lues à partir du disque, vous pouvez effectuer une sauvegarde sur "NUL"
BACKUP DATABASE DBName TO DISK = 'NUL' WITH COPY_ONLY;
Dans mon cas, je me suis retrouvé avec 122.406 MB/sec
Test de la vitesse à laquelle vous pouvez écrire
Pour savoir à quelle vitesse vous pouvez écrire, vous pouvez utiliser Crystaldiskmark .
Utilisez Seq Q32T1 pour imiter les écritures de l'opération de sauvegarde.
C'est ce qui apparaît sur mon lecteur cible lent, où je veux sauvegarder.
Mettre deux et deux ensemble
Si j'exécute ensuite une commande de sauvegarde de ma base de données qui réside sur le [~ # ~] d [~ # ~] (data) & [~ # ~] l [~ # ~] (log) lecteur sur le disque que j'ai précédemment vérifié avec CrystalDiskMark ( [~ # ~] e [~ # ~] ).
BACKUP DATABASE DBName TO DISK = 'E:\Folder\DbName.BAK';
Processed 703088 pages for database 'DbName', file 'Database' on file 1.
Processed 2 pages for database 'DbName', file 'Database' on file 1.
BACKUP DATABASE successfully processed 703090 pages in 50.198 seconds (109.424 MB/sec).
Nous voyons que la partie lecture de l'opération de sauvegarde est le goulot d'étranglement sur mon système.
LA BASE DE DONNÉES DE SAUVEGARDE a réussi à traiter 19696388 pages en 1945,648 secondes (79,088 Mo/sec).
La vitesse que vous voyez ici est le résultat de division simple de l'ensemble backup
durée par volume de données traitées.
Dans votre cas, la durée de la sauvegarde est 1945.648 s
, le volume de données traité est 19696388 pages * 8Kb / 1024 = 153.878,03125 Mb
Le speed = 153.878,03125 Mb / 1945.648 s = 79,08831980399332 Mb/s
et c'est ce dont parle le message.
Dans l'exemple de Randi Vertongen:
LA BASE DE DONNÉES DE SAUVEGARDE a traité avec succès 703090 pages en 50,198 secondes (109,424 Mo/sec).
Data volume = 703090 pages * 8Kb / 1024 = 5.492,890625 Mb
Le speed = 5.492,890625 Mb / 50.198 s = 109,4244915136061 Mb/s
Cela signifie seulement que votre backup speed
est 79,088
et rien d'autre, il pourrait y avoir 19 secondes pour lire + 60 pour écrire, mais vous ne pouvez pas le déduire de la durée totale de l'opération et du volume traité.