Sauvegarde, partie 1 : Finalité, revue des méthodes et technologies

Sauvegarde, partie 1 : Finalité, revue des méthodes et technologies
Pourquoi devez-vous faire des sauvegardes ? AprÚs tout, l'équipement est trÚs, trÚs fiable, et en plus, il existe des « cloud » qui sont plus fiables que les serveurs physiques : avec une configuration appropriée, un serveur « cloud » peut facilement survivre à la panne d'un serveur physique d'infrastructure, et de du point de vue des utilisateurs du service, il y aura un petit saut, à peine perceptible, dans le temps de service. De plus, la duplication des informations nécessite souvent de payer pour du temps processeur, de la charge disque et du trafic réseau « supplémentaires ».

Un programme idĂ©al s’exĂ©cute rapidement, ne perd pas de mĂ©moire, ne prĂ©sente aucun trou et n’existe pas.

-Inconnu

Étant donnĂ© que les programmes sont encore Ă©crits par des dĂ©veloppeurs de protĂ©ines et qu'il n'y a souvent aucun processus de test, et que les programmes sont rarement livrĂ©s en utilisant les « meilleures pratiques » (qui sont elles-mĂȘmes Ă©galement des programmes et donc imparfaites), les administrateurs systĂšme doivent le plus souvent rĂ©soudre des problĂšmes qui semblent brefs mais succinctement : « revenir Ă  ce qu'elle Ă©tait », « amener la base Ă  un fonctionnement normal », « fonctionne lentement - revenir en arriĂšre », et aussi mon prĂ©fĂ©rĂ© « Je ne sais pas quoi, mais rĂ©pare-le ».

En plus des erreurs logiques résultant d'un travail négligent des développeurs, ou d'une combinaison de circonstances, ainsi que d'une connaissance incomplÚte ou d'une incompréhension des petites fonctionnalités des programmes de construction - y compris celles de connexion et du systÚme, y compris les systÚmes d'exploitation, les pilotes et les micrologiciels - il y a aussi d'autres erreurs. Par exemple, la plupart des développeurs s'appuient sur le runtime, oubliant complÚtement les lois physiques, qui restent impossibles à contourner à l'aide de programmes. Cela inclut la fiabilité infinie du sous-systÚme de disque et, en général, de tout sous-systÚme de stockage de données (y compris la RAM et le cache du processeur !), le temps de traitement nul sur le processeur et l'absence d'erreurs lors de la transmission sur le réseau et lors du traitement sur le processeur et la latence du réseau, qui est égale à 0. Il ne faut pas négliger le fameux délai, car si vous ne le respectez pas à temps, des problÚmes pires que les nuances du fonctionnement du réseau et du disque surviendront.

Sauvegarde, partie 1 : Finalité, revue des méthodes et technologies

Que faire des problĂšmes qui surgissent de plein fouet et pĂšsent sur des donnĂ©es prĂ©cieuses ? Rien ne remplace les dĂ©veloppeurs vivants, et ce n’est pas un fait que cela sera possible dans un avenir proche. D’un autre cĂŽtĂ©, seuls quelques projets ont rĂ©ussi Ă  prouver pleinement que le programme fonctionnera comme prĂ©vu, et il ne sera pas nĂ©cessairement possible de prendre en compte et d’appliquer ces preuves Ă  d’autres projets similaires. En outre, de telles preuves prennent beaucoup de temps et nĂ©cessitent des compĂ©tences et des connaissances particuliĂšres, ce qui minimise pratiquement la possibilitĂ© de leur utilisation compte tenu des dĂ©lais. De plus, nous ne savons pas encore utiliser une technologie ultra-rapide, bon marchĂ© et infiniment fiable pour stocker, traiter et transmettre l’information. Ces technologies, si elles existent, se prĂ©sentent sous la forme de concepts ou – le plus souvent – ​​uniquement dans des livres et des films de science-fiction.

Les bons artistes copient les grands artistes volent.

-Pablo Picasso.

Les solutions les plus efficaces et les choses Ă©tonnamment simples se produisent gĂ©nĂ©ralement lĂ  oĂč se rencontrent des concepts, des technologies, des connaissances et des domaines scientifiques qui, Ă  premiĂšre vue, sont absolument incompatibles.

Par exemple, les oiseaux et les avions ont des ailes, mais malgrĂ© la similitude fonctionnelle, le principe de fonctionnement dans certains modes est le mĂȘme et les problĂšmes techniques sont rĂ©solus de la mĂȘme maniĂšre : os creux, utilisation de matĂ©riaux solides et lĂ©gers, etc. les rĂ©sultats sont complĂštement diffĂ©rents, bien que trĂšs similaires. Les meilleurs exemples que nous voyons dans notre technologie sont Ă©galement largement empruntĂ©s Ă  la nature : les compartiments pressurisĂ©s des navires et des sous-marins sont une analogie directe avec les annĂ©lides ; construire des matrices de raid et vĂ©rifier l'intĂ©gritĂ© des donnĂ©es - dupliquer la chaĂźne d'ADN ; ainsi que des organes appariĂ©s, l'indĂ©pendance du travail des diffĂ©rents organes du systĂšme nerveux central (automatisation du cƓur) et des rĂ©flexes - systĂšmes autonomes sur Internet. Bien sĂ»r, adopter et appliquer de front des solutions toutes faites pose de nombreux problĂšmes, mais qui sait, peut-ĂȘtre qu’il n’y a pas d’autres solutions.

Si seulement j'avais su oĂč tu tomberais, j'aurais disposĂ© des pailles !

—Proverbe populaire biĂ©lorusse

Cela signifie que les copies de sauvegarde sont vitales pour ceux qui souhaitent :

  • Être capable de restaurer le fonctionnement de vos systĂšmes avec un temps d'arrĂȘt minimal, voire mĂȘme sans aucun temps d'arrĂȘt
  • Agissez avec audace, car en cas d'erreur, il y a toujours la possibilitĂ© d'un retour en arriĂšre
  • Minimiser les consĂ©quences de la corruption intentionnelle des donnĂ©es

Voici une petite théorie

Toute classification est arbitraire. La nature ne classe pas. Nous classons parce que c'est plus pratique pour nous. Et nous classons selon des données que nous prenons également arbitrairement.

—Jean BrĂ»ler

Quelle que soit la mĂ©thode de stockage physique, le stockage logique des donnĂ©es peut ĂȘtre divisĂ© en deux maniĂšres d'accĂ©der Ă  ces donnĂ©es : par bloc et par fichier. Cette division est rĂ©cemment devenue trĂšs floue, car le stockage logique purement en bloc, ni purement en fichiers, n'existe pas. Cependant, par souci de simplicitĂ©, nous supposerons qu'ils existent.

Le stockage de donnĂ©es par blocs implique qu'il existe un pĂ©riphĂ©rique physique sur lequel les donnĂ©es sont Ă©crites dans certaines parties fixes, des blocs. Les blocs sont accessibles Ă  une certaine adresse ; chaque bloc a sa propre adresse dans l’appareil.

Une sauvegarde est généralement effectuée en copiant des blocs de données. Pour garantir l'intégrité des données, l'enregistrement des nouveaux blocs, ainsi que les modifications apportées aux blocs existants, sont suspendus au moment de la copie. Si nous prenons une analogie avec le monde ordinaire, la chose la plus proche est un placard avec des cellules numérotées identiques.

Sauvegarde, partie 1 : Finalité, revue des méthodes et technologies

Le stockage de donnĂ©es de fichiers basĂ© sur le principe du pĂ©riphĂ©rique logique est proche du stockage en bloc et est souvent organisĂ© par-dessus. Les diffĂ©rences importantes sont la prĂ©sence d'une hiĂ©rarchie de stockage et de noms lisibles par l'homme. Une abstraction est attribuĂ©e sous la forme d'un fichier - une zone de donnĂ©es nommĂ©e, ainsi que d'un rĂ©pertoire - un fichier spĂ©cial dans lequel sont stockĂ©s les descriptions et l'accĂšs Ă  d'autres fichiers. Les fichiers peuvent ĂȘtre fournis avec des mĂ©tadonnĂ©es supplĂ©mentaires : heure de crĂ©ation, indicateurs d'accĂšs, etc. Les sauvegardes sont gĂ©nĂ©ralement effectuĂ©es de cette maniĂšre : elles recherchent les fichiers modifiĂ©s, puis les copient vers un autre stockage de fichiers avec la mĂȘme structure. L'intĂ©gritĂ© des donnĂ©es est gĂ©nĂ©ralement mise en Ɠuvre par l'absence de fichiers en cours d'Ă©criture. Les mĂ©tadonnĂ©es des fichiers sont sauvegardĂ©es de la mĂȘme maniĂšre. L’analogie la plus proche est celle d’une bibliothĂšque, qui comporte des sections contenant diffĂ©rents livres, ainsi qu’un catalogue avec des noms de livres lisibles par l’homme.

Sauvegarde, partie 1 : Finalité, revue des méthodes et technologies

RĂ©cemment, une autre option est parfois dĂ©crite, Ă  partir de laquelle, en principe, est nĂ© le stockage de donnĂ©es de fichiers, et qui prĂ©sente les mĂȘmes caractĂ©ristiques archaĂŻques : le stockage de donnĂ©es objet.

Il diffĂšre du stockage de fichiers en ce sens qu'il ne comporte pas plus d'une imbrication (schĂ©ma plat) et que les noms de fichiers, bien que lisibles par l'homme, sont nĂ©anmoins plus adaptĂ©s au traitement par des machines. Lors de l'exĂ©cution de sauvegardes, le stockage d'objets est le plus souvent traitĂ© de la mĂȘme maniĂšre que le stockage de fichiers, mais il existe parfois d'autres options.

— Il existe deux types d'administrateurs systùme, ceux qui ne font pas de sauvegardes et ceux qui le font DÉJÀ.
- En fait, il y en a trois types : il y a aussi ceux qui vĂ©rifient que les sauvegardes peuvent ĂȘtre restaurĂ©es.

-Inconnu

Il convient Ă©galement de comprendre que le processus de sauvegarde des donnĂ©es lui-mĂȘme est effectuĂ© par des programmes et prĂ©sente donc les mĂȘmes inconvĂ©nients que tout autre programme. Pour supprimer (et non Ă©liminer !) la dĂ©pendance Ă  l'Ă©gard du facteur humain, ainsi que les caractĂ©ristiques - qui individuellement n'ont pas d'effet important, mais qui, ensemble, peuvent donner un effet notable - ce qu'on appelle rĂšgle 3-2-1. Il existe de nombreuses options pour le dĂ©chiffrer, mais je prĂ©fĂšre l'interprĂ©tation suivante : 3 ensembles des mĂȘmes donnĂ©es doivent ĂȘtre stockĂ©s, 2 ensembles doivent ĂȘtre stockĂ©s dans des formats diffĂ©rents et 1 ensemble doit ĂȘtre stockĂ© dans un stockage gĂ©ographiquement distant.

Le format de stockage doit ĂȘtre compris comme suit :

  • S'il y a une dĂ©pendance Ă  la mĂ©thode de stockage physique, nous changeons de mĂ©thode physique.
  • S'il existe une dĂ©pendance Ă  la mĂ©thode de stockage logique, nous changeons de mĂ©thode logique.

Pour obtenir l'effet maximal de la rÚgle 3-2-1, il est recommandé de modifier le format de stockage dans les deux sens.

Du point de vue de l'Ă©tat de prĂ©paration d'une sauvegarde pour son objectif prĂ©vu - restauration de la fonctionnalitĂ© - une distinction est faite entre les sauvegardes « Ă  chaud » et « Ă  froid ». Les chauds ne diffĂšrent des froids que sur une chose : ils sont immĂ©diatement prĂȘts Ă  l'emploi, tandis que les froids nĂ©cessitent quelques Ă©tapes supplĂ©mentaires de rĂ©cupĂ©ration : dĂ©cryptage, extraction de l'archive, etc.

Ne confondez pas les copies Ă  chaud et Ă  froid avec les copies en ligne et hors ligne, qui impliquent un isolement physique des donnĂ©es et, en fait, sont un autre signe de classification des mĂ©thodes de sauvegarde. Ainsi, une copie hors ligne - qui n'est pas directement connectĂ©e au systĂšme oĂč elle doit ĂȘtre restaurĂ©e - peut ĂȘtre chaude ou froide (en termes de prĂ©paration Ă  la rĂ©cupĂ©ration). Une copie en ligne peut ĂȘtre disponible directement lĂ  oĂč elle doit ĂȘtre restaurĂ©e, et le plus souvent elle est chaude, mais il en existe aussi des froides.

De plus, n'oubliez pas que le processus de crĂ©ation de copies de sauvegarde lui-mĂȘme ne se termine gĂ©nĂ©ralement pas par la crĂ©ation d'une copie de sauvegarde et qu'il peut y avoir un assez grand nombre de copies. Il faut donc faire la distinction entre les sauvegardes complĂštes, c'est-Ă -dire celles qui peuvent ĂȘtre restaurĂ©es indĂ©pendamment des autres sauvegardes, ainsi que les copies diffĂ©rentielles (incrĂ©mentales, diffĂ©rentielles, dĂ©crĂ©mentales, etc.) - celles qui ne peuvent pas ĂȘtre restaurĂ©es indĂ©pendamment et nĂ©cessitent la restauration prĂ©alable d'une ou plusieurs autres sauvegardes.

Les sauvegardes incrémentielles différentielles constituent une tentative d'économiser de l'espace de stockage de sauvegarde. Ainsi, seules les données modifiées de la sauvegarde précédente sont écrites sur la copie de sauvegarde.

Les dĂ©crĂ©mentations diffĂ©rentielles sont créées dans le mĂȘme but, mais d'une maniĂšre lĂ©gĂšrement diffĂ©rente : une copie de sauvegarde complĂšte est effectuĂ©e, mais seule la diffĂ©rence entre la nouvelle copie et la prĂ©cĂ©dente est rĂ©ellement stockĂ©e.

Séparément, il convient de considérer le processus de sauvegarde sur stockage, qui prend en charge l'absence de stockage de doublons. Ainsi, si vous écrivez des sauvegardes complÚtes par-dessus, seules les différences entre les sauvegardes seront réellement écrites, mais le processus de restauration des sauvegardes sera similaire à la restauration à partir d'une copie complÚte et totalement transparent.

Quis custodiet ipsos custodes ?

(Qui gardera les gardiens eux-mĂȘmes ? - lat.)

C'est trĂšs dĂ©sagrĂ©able lorsqu'il n'y a pas de copies de sauvegarde, mais c'est bien pire si une copie de sauvegarde semble avoir Ă©tĂ© faite, mais lors de la restauration, il s'avĂšre qu'elle ne peut pas ĂȘtre restaurĂ©e car :

  • L'intĂ©gritĂ© des donnĂ©es sources a Ă©tĂ© compromise.
  • Le stockage de sauvegarde est endommagĂ©.
  • La restauration fonctionne trĂšs lentement, vous ne pouvez pas utiliser les donnĂ©es partiellement rĂ©cupĂ©rĂ©es.

Un processus de sauvegarde correctement construit doit prendre en compte ces commentaires, en particulier les deux premiers.

L'intĂ©gritĂ© des donnĂ©es sources peut ĂȘtre garantie de plusieurs maniĂšres. Les plus couramment utilisĂ©s sont les suivants : a) crĂ©er des instantanĂ©s du systĂšme de fichiers au niveau du bloc, b) « geler » l'Ă©tat du systĂšme de fichiers, c) un pĂ©riphĂ©rique de bloc spĂ©cial avec stockage de versions, d) l'enregistrement sĂ©quentiel de fichiers ou blocs. Des sommes de contrĂŽle sont Ă©galement appliquĂ©es pour garantir que les donnĂ©es sont vĂ©rifiĂ©es pendant la rĂ©cupĂ©ration.

La corruption du stockage peut Ă©galement ĂȘtre dĂ©tectĂ©e Ă  l’aide de sommes de contrĂŽle. Une mĂ©thode supplĂ©mentaire consiste Ă  utiliser des appareils ou des systĂšmes de fichiers spĂ©cialisĂ©s dans lesquels les donnĂ©es dĂ©jĂ  enregistrĂ©es ne peuvent pas ĂȘtre modifiĂ©es, mais de nouvelles peuvent ĂȘtre ajoutĂ©es.

Pour accélérer la récupération, la récupération des données est utilisée avec plusieurs processus de récupération - à condition qu'il n'y ait pas de goulot d'étranglement sous la forme d'un réseau lent ou d'un systÚme de disque lent. Pour contourner la situation des données partiellement récupérées, vous pouvez diviser le processus de sauvegarde en sous-tùches relativement petites, chacune étant effectuée séparément. Ainsi, il devient possible de restaurer systématiquement les performances tout en prédisant le temps de récupération. Ce problÚme réside le plus souvent au niveau du plan organisationnel (SLA), nous ne nous y attarderons donc pas en détail.

Un expert en Ă©pices n’est pas celui qui en ajoute Ă  chaque plat, mais celui qui n’y ajoute jamais rien de plus.

-DANS. Siniavski

Les pratiques concernant les logiciels utilisĂ©s par les administrateurs systĂšme peuvent varier, mais les principes gĂ©nĂ©raux restent, d'une maniĂšre ou d'une autre, les mĂȘmes, notamment :

  • Il est fortement recommandĂ© d'utiliser des solutions toutes faites.
  • Les programmes doivent fonctionner de maniĂšre prĂ©visible, c'est-Ă -dire Il ne devrait y avoir aucune fonctionnalitĂ© ou goulot d’étranglement non documentĂ©.
  • La configuration de chaque programme doit ĂȘtre si simple que vous n'avez pas besoin de lire le manuel ou l'aide-mĂ©moire Ă  chaque fois.
  • Si possible, la solution devrait ĂȘtre universelle, car les caractĂ©ristiques matĂ©rielles des serveurs peuvent varier considĂ©rablement.

Il existe les programmes courants suivants pour effectuer des sauvegardes Ă  partir de pĂ©riphĂ©riques bloquĂ©s :

  • dd, familier aux vĂ©tĂ©rans de l'administration systĂšme, cela inclut Ă©galement des programmes similaires (le mĂȘme dd_rescue, par exemple).
  • Utilitaires intĂ©grĂ©s Ă  certains systĂšmes de fichiers qui crĂ©ent un dump du systĂšme de fichiers.
  • Utilitaires omnivores ; par exemple partclone.
  • DĂ©cisions propres, souvent exclusives ; par exemple, NortonGhost et versions ultĂ©rieures.

Pour les systĂšmes de fichiers, le problĂšme de sauvegarde est partiellement rĂ©solu en utilisant des mĂ©thodes applicables aux pĂ©riphĂ©riques bloc, mais le problĂšme peut ĂȘtre rĂ©solu plus efficacement en utilisant, par exemple :

  • Rsync, un programme et un protocole Ă  usage gĂ©nĂ©ral pour synchroniser l'Ă©tat des systĂšmes de fichiers.
  • Outils d'archivage intĂ©grĂ©s (ZFS).
  • Outils d'archivage tiers ; le reprĂ©sentant le plus populaire est le goudron. Il y en a d'autres, par exemple Dar - un remplacement de tar destinĂ© aux systĂšmes modernes.

Il convient de mentionner sĂ©parĂ©ment les outils logiciels permettant d'assurer la cohĂ©rence des donnĂ©es lors de la crĂ©ation de copies de sauvegarde. Les options les plus couramment utilisĂ©es sont :

  • Monter le systĂšme de fichiers en mode lecture seule (ReadOnly) ou geler le systĂšme de fichiers (freeze) - la mĂ©thode est d'applicabilitĂ© limitĂ©e.
  • CrĂ©ation d'instantanĂ©s de l'Ă©tat des systĂšmes de fichiers ou des pĂ©riphĂ©riques de bloc (LVM, ZFS).
  • L'utilisation d'outils tiers pour organiser les impressions, mĂȘme dans les cas oĂč les points prĂ©cĂ©dents ne peuvent pas ĂȘtre fournis pour une raison quelconque (programmes comme hotcopy).
  • La technique de copie sur modification (CopyOnWrite), cependant, est le plus souvent liĂ©e au systĂšme de fichiers utilisĂ© (BTRFS, ZFS).

Ainsi, pour un petit serveur, vous devez fournir un schĂ©ma de sauvegarde qui rĂ©pond aux exigences suivantes :

  • Facile Ă  utiliser - aucune Ă©tape supplĂ©mentaire particuliĂšre n'est requise pendant le fonctionnement, des Ă©tapes minimes pour crĂ©er et restaurer des copies.
  • Universel – fonctionne aussi bien sur les grands que sur les petits serveurs ; c’est important Ă  mesure que le nombre de serveurs augmente. les serveurs ou mise Ă  l'Ă©chelle.
  • InstallĂ© par un gestionnaire de packages, ou en une ou deux commandes comme « tĂ©lĂ©charger et dĂ©compresser ».
  • Stable - un format de stockage standard ou Ă©tabli de longue date est utilisĂ©.
  • Rapide au travail.

Les candidats parmi ceux qui rĂ©pondent plus ou moins aux exigences :

  • rdiff-sauvegarde
  • instantanĂ©
  • rot
  • duplicata
  • duplicitĂ©
  • laissez dup
  • donner
  • zsauvegarde
  • restique
  • sauvegarde borg

Sauvegarde, partie 1 : Finalité, revue des méthodes et technologies

Une machine virtuelle (basée sur XenServer) présentant les caractéristiques suivantes servira de banc de test :

  • 4 cƓurs 2.5 GHz,
  • 16 Go de RAM,
  • Stockage hybride de 50 Go (systĂšme de stockage avec mise en cache sur SSD 20% de la taille du disque virtuel) sous forme de disque virtuel sĂ©parĂ© sans partitionnement,
  • Canal Internet 200 Mbps.

Presque la mĂȘme machine sera utilisĂ©e comme serveur rĂ©cepteur de secours, uniquement avec un disque dur de 500 Go.

SystĂšme opĂ©rateur - Centos 7 x64 : partitionnement standard, une partition supplĂ©mentaire sera utilisĂ©e comme source de donnĂ©es.

Comme données de départ, nous utiliserons un site WordPress avec 40 Go de fichiers multimédias et une base de données MySQL. Serveurs virtuels leurs caractéristiques diffÚrent considérablement, et pour une meilleure reproductibilité, il existe

résultats des tests du serveur à l'aide de sysbench.sysbench --threads=4 --time=30 --cpu-max-prime=20000 exécution du processeur
sysbench 1.1.0-18a9f86 (utilisant LuaJIT 2.1.0-beta3 fourni)
Exécution du test avec les options suivantes:
Nombre de threads: 4
Initialisation du générateur de nombres aléatoires à partir de l'heure actuelle

Limite des nombres premiers : 20000 XNUMX

Initialisation des threads de travail


Les discussions ont commencé!

Vitesse CPU:
Ă©vĂ©nements par seconde : 836.69

Débit:
événements/s (eps): 836.6908
temps écoulé : 30.0039s
nombre total d'événements : 25104

Latence (ms) :
min : 2.38
moyenne : 4.78
max : 22.39
95e centile : 10.46
somme: 119923.64

ÉquitĂ© des threads:
événements (moy/stddev) : 6276.0000/13.91
temps d'exĂ©cution (moyenne/stddev) : 29.9809/0.01

sysbench --threads=4 --time=30 --memory-block-size=1K --memory-scope=global --memory-total-size=100G --memory-oper=lire la mémoire exécutée
sysbench 1.1.0-18a9f86 (utilisant LuaJIT 2.1.0-beta3 fourni)
Exécution du test avec les options suivantes:
Nombre de threads: 4
Initialisation du générateur de nombres aléatoires à partir de l'heure actuelle

ExĂ©cution d'un test de vitesse de mĂ©moire avec les options suivantes :
taille du bloc : 1 Ko
taille totale : 102400 XNUMX Mo
opération : lire
portĂ©e : mondiale

Initialisation des threads de travail


Les discussions ont commencé!

OpĂ©rations totales : 50900446 (1696677.10 par seconde)

49707.47 1656.91 Mio transfĂ©rĂ©s (XNUMX XNUMX Mio/sec)

Débit:
événements/s (eps): 1696677.1017
temps écoulé : 30.0001s
nombre total d'événements : 50900446

Latence (ms) :
min : 0.00
moyenne : 0.00
max : 24.01
95e centile : 0.00
somme: 39106.74

ÉquitĂ© des threads:
événements (moy/stddev) : 12725111.5000/137775.15
temps d'exĂ©cution (moyenne/stddev) : 9.7767/0.10

sysbench --threads=4 --time=30 --memory-block-size=1K --memory-scope=global --memory-total-size=100G --memory-oper=écriture de la mémoire
sysbench 1.1.0-18a9f86 (utilisant LuaJIT 2.1.0-beta3 fourni)
Exécution du test avec les options suivantes:
Nombre de threads: 4
Initialisation du générateur de nombres aléatoires à partir de l'heure actuelle

ExĂ©cution d'un test de vitesse de mĂ©moire avec les options suivantes :
taille du bloc : 1 Ko
taille totale : 102400 XNUMX Mo
opĂ©ration : Ă©crire
portĂ©e : mondiale

Initialisation des threads de travail


Les discussions ont commencé!

OpĂ©rations totales : 35910413 (1197008.62 par seconde)

35068.76 1168.95 Mio transfĂ©rĂ©s (XNUMX XNUMX Mio/sec)

Débit:
événements/s (eps): 1197008.6179
temps écoulé : 30.0001s
nombre total d'événements : 35910413

Latence (ms) :
min : 0.00
moyenne : 0.00
max : 16.90
95e centile : 0.00
somme: 43604.83

ÉquitĂ© des threads:
événements (moy/stddev) : 8977603.2500/233905.84
temps d'exĂ©cution (moyenne/stddev) : 10.9012/0.41

sysbench --threads=4 --file-test-mode=rndrw --time=60 --file-block-size=4K --file-total-size=1G fileio run
sysbench 1.1.0-18a9f86 (utilisant LuaJIT 2.1.0-beta3 fourni)
Exécution du test avec les options suivantes:
Nombre de threads: 4
Initialisation du générateur de nombres aléatoires à partir de l'heure actuelle

Indicateurs d'ouverture de fichier supplĂ©mentaire : (aucun)
128 fichiers, 8 Mo chacun
Taille totale du fichier de 1 Go
Taille du bloc 4 Ko
Nombre de requĂȘtes IO : 0
Rapport lecture/Ă©criture pour le test IO alĂ©atoire combinĂ© : 1.50
FSYNC pĂ©riodique activĂ©, appelant fsync() toutes les 100 requĂȘtes.
Appel de fsync() à la fin du test, activé.
Utilisation du mode E/S synchrone
Faire un test r/w aléatoire
Initialisation des threads de travail


Les discussions ont commencé!

Débit:
lire : IOPS = 3868.21 15.11 15.84 Mio/s (XNUMX Mo/s)
Ă©criture : IOPS=2578.83 10.07 10.56 Mio/s (XNUMX Mo/s)
fsync : IOPS = 8226.98 XNUMX

Latence (ms) :
min : 0.00
moyenne : 0.27
max : 18.01
95e centile : 1.08
somme: 238469.45

Cette note commence un grand

série d'articles sur la sauvegarde

  1. Sauvegarde, partie 1 : pourquoi la sauvegarde est nécessaire, un aperçu des méthodes, des technologies
  2. Sauvegarde Partie 2 : Examiner et tester les outils de sauvegarde basés sur rsync
  3. Sauvegarde Partie 3 : Examiner et tester la duplicité, la duplication, déjà dup
  4. Sauvegarde Partie 4 : Examen et test de zbackup, restic, borgbackup
  5. Sauvegarde Partie 5 : Tester la sauvegarde bacula et veeam pour Linux
  6. Sauvegarde Partie 6 : Comparaison des outils de sauvegarde
  7. Sauvegarde Partie 7 : Conclusions

Source: habr.com

Achetez un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS đŸ”„ Achetez un hĂ©bergement web fiable avec protection DDoS, serveurs VPS et VDS | ProHoster