FreeBSD plant, zu ZFSonLinux zu wechseln

Letzte Woche hat einer der FreeBSD-Entwickler, Matt Macy, einen Vorschlag zur Verwendung der ZFS-Implementierung aus dem ZFSonLinux-Projekt vorgelegt. Somit werden alle erforderlichen Änderungen für FreeBSD sofort in die ZFSonLinux-Codebasis integriert. Dieser Vorschlag endete nicht, es wurde bereits eine Abzweigung erstellt, in der die erforderlichen Verbesserungen vorgenommen wurden, und die Genehmigung der wichtigsten ZFSonLinux-Entwickler für die Aufnahme von Verbesserungen für FreeBSD in eine einzige Codebasis wurde eingeholt.


Bild

Ist das eine gute Nachricht? Natürlich ja! Das Endergebnis ist die Konzentration aller am OpenZFS-Projekt beteiligten Entwickler an einem Ort in einer Codebasis.


Bisher hat OpenZFS das Illumos-Projekt-Repository als Referenzpunkt angeboten, über den der Code-Austausch zwischen allen Teilnehmern der Zusammenarbeit (ZFSonLinux, FreeBSD, Illumos, ZFSonOSX) stattfinden sollte. Es ist erwähnenswert, dass die Kompatibilität zwischen den Implementierungen auf dem richtigen Niveau gehalten wurde. Leider ist das Portieren von Änderungen unter der Bedingung, dass der Code nicht 100% identisch ist, ein sehr zeitaufwändiger Vorgang.


Die Hauptmotivation ist der de facto vollständige Übergang der Schlüsselentwickler zum ZFSonLinux-Projekt. Zuvor war Delphix die Hauptorganisation, die die Illumos-Codebasis unterstützte. Anfang dieses Jahres beschlossen sie jedoch, auf Linux zu migrieren .


Das Hauptleben spielt sich (seltsamerweise) im ZFSonLinux-Projekt ab. Im Laufe mehrerer Jahre sind viele neue Funktionen darin erschienen, die wichtigsten:


  • Integrierte Verschlüsselung (mit der Möglichkeit, die Integrität ohne Schlüssel zu überprüfen!)
  • Sequentielles "Scrub" - jetzt wird die Datenintegritätsprüfung optimal durchgeführt
  • Metadatenzuordnungsklasse - kann separaten Medien (SSD / NVME) zugewiesen werden:
    • Metadaten
    • Deduplizierungsdaten
    • Blöcke, die kleiner als die angegebene Größe sind (z. B. Dateien mit einer Größe von bis zu 4 KB)
  • Große Knoten - Optimierungen für Systeme, die eine große Anzahl von Metadaten generieren (speziell für Lustre entwickelt)
  • ARC-Caching-Mechanismus neu gestaltet, um die Fragmentierung zu minimieren (Scatter / Gather-Mechanismus wird verwendet)
  • RAIDZ-Code-Vektorisierung, Prüfsummenvektorisierung

Es ist erwähnenswert, dass FreeBSD-Entwickler neben der neuen Funktionalität die Aufnahme vieler Stabilisierungs- und Deadlock-Änderungen in ZFSonLinux bemerkten, die auch nicht auf andere Projekte portiert wurden.


Hoffen wir, dass wir mit diesem Schritt das Produkt weiter verbessern und alle Ressourcen in einer einzigen Codebasis konzentrieren können.


Hurra, Genossen!


PS Warum Sie sich für ZFS interessieren könnten.

Source: https://habr.com/ru/post/de434688/


All Articles