ZFS'in temel prensibi, depolama donanımının doğru veri döndüreceği varsayımına güvenmek yerine, her bloğun doğruluğunu kanıtlamasıdır. Bu yaklaşım, modern depolamada en tehlikeli hata modlarından biri olan sessiz veri bozulmalarına karşı kritik bir koruma sağlar. ZFS, depoladığı her şeyi kontrol eder, checksum'leri üst blok işaretçilerinde tutar ve eşleşmeyen herhangi bir veriyi onarmak için yedekliliğe dayanır. "Scrub"lar, tüm havuzu tarayan ve verilerin olması gereken kayıtla hala eşleştiğini doğrulayan özel bir kontrol okuma işlemidir. Bu makale, scrub'ların ne işe yaradığını, Merkle tree yapısının ZFS'in meta verileri ve verileri uçtan uca nasıl doğruladığını, yedekliliğin checksum onarımıyla nasıl bağlantılı olduğunu ve scrub'ların neden "resilver"lardan farklı olduğunu açıklıyor.
Bir ZFS scrub'ı, havuz genelinde yapılan bir doğrulama prosedürüdür. Bu işlem, ayrılmış tüm veri ve meta veri bloklarını okur ve depolanan checksum'leriyle karşılaştırır. Bu doğrulama, meta veri bloklarını, kullanıcı veri bloklarını ve hatta ZFS'in checksum hatalarından kurtulmak için depoladığı parity bloklarını da kapsar. Çoğu açıklama, scrub'ların yalnızca kullanıcı verilerini kontrol ettiğini yanlış bir şekilde ima etse de, ZFS meta verilere aynı düzeyde koruma uygular ve bir scrub her ikisini de kapsamlı bir şekilde doğrular.
Bir scrub sırasında ZFS, veri setini oluşturan blok işaretçilerinin tüm ağacını dolaşır. ZFS, her üst bloğun çocukları için blok işaretçileri içerdiği ve her blok işaretçisinin referans verdiği bloğun checksum'ini barındırdığı bir Merkle tree yapısı etrafında inşa edilmiştir. Bu nedenle, üst checksum, alt meta veriyi korur. Bu özyinelemeli yapı, diskteki fiziksel bloklara kadar aşağı doğru devam eder. Bir yaprak blok bozulursa, uyumsuzluk yukarı doğru yayılır ve bozulmanın gizlenmesini imkansız hale getirir. ZFS bir bloğu okuduğunda, diskten dönen veriden checksum'i yeniden hesaplar ve hesaplanan değeri blok işaretçisinde depolanan checksum ile karşılaştırır. Eşleşirlerse, ZFS bloğun geçerli olduğundan emin olur; değerler farklıysa, blok bozuktur. ZFS daha sonra mevcut yedekliliği kullanarak bloğu onarmaya çalışır.
ZFS'in veri bütünlüğü konusundaki benzersiz yaklaşımı ve scrub işlemlerinin sessiz veri bozulmalarına karşı sağladığı koruma, modern depolama sistemleri için kritik öneme sahiptir.