Reiser5 prestatietestresultaten van bestandssysteem gepubliceerd

De resultaten van prestatietests van het Reiser5-project zijn gepubliceerd, dat een aanzienlijk opnieuw ontworpen versie van het Reiser4-bestandssysteem ontwikkelt met ondersteuning voor logische volumes met “parallelle schaling”, wat, in tegenstelling tot traditionele RAID, de actieve deelname van het bestandssysteem impliceert bij het distribueren van gegevens tussen de samenstellende apparaten van het logische volume. Vanuit het perspectief van een beheerder is het significante verschil met RAID dat de componenten van een logisch volume op parallelle schaal geformatteerde blokapparaten zijn.

De gepresenteerde testresultaten evalueren de prestaties van algemene bestandsbewerkingen, zoals het schrijven van een bestand naar een logisch volume, het lezen van een bestand van een logisch volume dat bestaat uit een variabel aantal SSD's. De prestaties van bewerkingen op logische volumes, zoals het toevoegen van een apparaat aan een logisch volume, het verwijderen van een apparaat van een logisch volume, het opnieuw instellen van gegevens van proxyschijven en het migreren van gegevens van een gewoon (niet speciaal) bestand naar een gespecificeerd apparaat, werden ook gemeten.

Er werden solid-state drives (SSD) in een hoeveelheid van 4 exemplaren gebruikt om de volumes samen te stellen. De snelheid van een bewerking op een logisch volume wordt gedefinieerd als de verhouding tussen de hoeveelheid bezette ruimte op het gehele logische volume en de tijd die nodig is om de bewerking te voltooien, inclusief volledige synchronisatie met de schijven.

De snelheid van elke bewerking (met uitzondering van het leegmaken van gegevens van een proxyschijf op een volume dat uit een klein aantal apparaten bestaat) is hoger dan de snelheid van het kopiëren van gegevens van het ene apparaat naar het andere. Tegelijkertijd neemt de snelheid van de bewerkingen toe met een toename van het aantal apparaten waaruit het volume is samengesteld. De uitzondering is de bestandsmigratiebewerking, waarvan de snelheid asymptotisch (van bovenaf) de snelheid van schrijven naar het doelapparaat benadert. Sequentiële toegang op laag niveau: Apparaat lezen, M/s schrijven, M/s DEV1 470 390 DEV2 530 420 Sequentiële lezen/schrijven van grote bestanden (M/s): Aantal schijven in volume Schrijven Lezen 1 (DEV1) 380 460 1 ( DEV2) 410 518 2 (DEV1+DEV2) 695 744 3 (DEV1+DEV2+DEV3) 890 970 4 (DEV1+DEV2+DEV3+DEV4) 950 1100 Serieel kopiëren van gegevens van/naar geformatteerd apparaat Van apparaat Naar apparaat Snelheid (M/s) DEV1 DEV2 260 DEV2 DEV1 255 Een apparaat toevoegen aan een logisch volume: Volume Toe te voegen apparaat Snelheid (M/s) DEV1 DEV2 284 DEV1+DEV2 DEV3 457 DEV1+DEV2+DEV3 DEV4 574 Een apparaat verwijderen van een logisch volume: Volume Te verwijderen apparaat Snelheid (M/s) DEV1+DEV2+DEV3+DEV4 DEV4 890 DEV1+DEV2+DEV3 DEV3 606 DEV1+DEV2 DEV2 336 Gegevens resetten van proxyschijf: Volume Proxyschijf Snelheid ​​(M/s) DEV1 DEV4 228 DEV1+DEV2 DEV4 244 DEV1+DEV2+ DEV3 DEV4 290 DEV1 RAM0 283 DEV1+DEV2 RAM0 301 DEV1+DEV2+DEV3 RAM0 374 DEV1+DEV2+DEV3+DEV4 RAM0 427 Bestandsmigratievolume Snelheid doelapparaat ​​(M/s) DEV1+DEV2+DEV3+DEV4 DEV1 387 DEV1+DEV2 +DEV3 DEV1 403 DEV1+DEV2 DEV1 427

Opgemerkt wordt dat de prestaties verder kunnen worden verbeterd als de procedure voor het uitgeven van I/O-verzoeken parallel wordt geschakeld over de componenten van het logische volume (momenteel gebeurt dit eenvoudigheidshalve in een lus met een enkele thread). En ook als u alleen die gegevens leest die onderhevig zijn aan beweging tijdens het opnieuw in evenwicht brengen (nu worden voor de eenvoud alle gegevens gelezen). De theoretische limiet voor de snelheid van het toevoegen/verwijderen van een tweede apparaat in systemen met parallelle schaling is tweemaal de kopieersnelheid van de eerste schijf naar de tweede (respectievelijk van de tweede naar de eerste). Nu is de snelheid van het toevoegen en verwijderen van een tweede schijf overeenkomstig 1.1 en 1.3 kopieersnelheden.

Bovendien is er een O(1)-defragmentatie aangekondigd die alle componenten van een logisch volume (inclusief de proxyschijf) parallel zal verwerken, d.w.z. in een tijd die de verwerkingstijd van de grootste component afzonderlijk niet overschrijdt.

Bron: opennet.ru

Voeg een reactie