Aliran integritas ReFS

Berlaku untuk: Windows Server 2022, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, Windows Server 2012, Windows 10

Aliran integritas adalah fitur opsional di ReFS yang memvalidasi dan memelihara integritas data menggunakan checksum. Meskipun ReFS selalu menggunakan checksum untuk metadata, ReFS tidak, secara default, menghasilkan atau memvalidasi checksum untuk data file. Aliran integritas adalah fitur opsional yang memungkinkan pengguna menggunakan checksum untuk data file. Saat aliran integritas diaktifkan, ReFS dapat menentukan dengan jelas apakah data valid atau rusak. Selain itu, ReFS dan Ruang Penyimpanan dapat bersama-sama memperbaiki metadata dan data yang rusak secara otomatis.

Cara kerjanya

Aliran integritas dapat diaktifkan untuk masing-masing file, direktori, atau seluruh volume, dan pengaturan aliran integritas dapat dialihkan kapan saja. Selain itu, pengaturan aliran integritas untuk file dan direktori diwarisi dari direktori induknya.

Setelah aliran integritas diaktifkan, ReFS akan membuat dan memelihara checksum untuk file yang ditentukan dalam metadata file tersebut. Checksum ini memungkinkan ReFS untuk memvalidasi integritas data sebelum mengaksesnya. Sebelum mengembalikan data apa pun yang mengaktifkan aliran integritas, ReFS akan terlebih dahulu menghitung checksum-nya:

Compute checksum for file data

Kemudian, checksum ini dibandingkan dengan checksum yang terkandung dalam metadata file. Jika checksum cocok, maka data ditandai sebagai valid dan dikembalikan kepada pengguna. Jika checksum tidak cocok, maka data rusak. Ketahanan volume menentukan bagaimana ReFS merespons kerusakan:

  • Jika ReFS dipasang pada ruang sederhana yang tidak tangguh atau drive kosong, ReFS akan mengembalikan kesalahan kepada pengguna tanpa mengembalikan data yang rusak.
  • Jika ReFS dipasang pada cermin tangguh atau ruang paritas, ReFS akan mencoba memperbaiki kerusakan.
    • Jika upaya berhasil, ReFS akan menerapkan penulisan korektif untuk memulihkan integritas data, dan itu akan mengembalikan data yang valid ke aplikasi. Aplikasi tetap tidak menyadari kerusakan apa pun.
    • Jika upaya tidak berhasil, ReFS akan mengembalikan kesalahan.

ReFS akan merekam semua kerusakan di Log Peristiwa Sistem, dan log akan mencerminkan apakah kerusakan diperbaiki.

Corrective write restores data integrity

Performa

Meskipun aliran integritas memberikan integritas data yang lebih besar untuk sistem, itu juga menimbulkan biaya performa. Ada beberapa alasan berbeda untuk ini:

  • Jika aliran integritas diaktifkan, semua operasi tulis menjadi operasi alokasi saat menulis. Meskipun ini menghindari hambatan baca-ubah-tulis karena ReFS tidak perlu membaca atau memodifikasi data yang ada, data file sering menjadi terfragmentasi, yang menunda pembacaan.
  • Tergantung pada beban kerja dan penyimpanan sistem yang mendasar, biaya komputasi komputasi dan memvalidasi checksum dapat menyebabkan latensi IO meningkat.

Karena aliran integritas membawa biaya performa, sebaiknya biarkan aliran integritas dinonaktifkan pada sistem sensitif performa.

Scrubber integritas

Seperti yang dijelaskan di atas, ReFS akan secara otomatis memvalidasi integritas data sebelum mengakses data apa pun. ReFS juga menggunakan scrubber latar belakang, yang memungkinkan ReFS memvalidasi data yang jarang diakses. Scrubber ini secara berkala memindai volume, mengidentifikasi kerusakan laten, dan secara proaktif memicu perbaikan data yang rusak.

Catatan

Scrubber integritas data hanya dapat memvalidasi data file untuk file tempat aliran integritas diaktifkan.

Secara default, scrubber berjalan setiap empat minggu, meskipun interval ini dapat dikonfigurasi dalam Task Scheduler di bawah Microsoft\Windows\Data Integrity Scan.

Contoh

Untuk memantau dan mengubah pengaturan integritas data file, ReFS menggunakan cmdlet Get-FileIntegrity dan Set-FileIntegrity .

Get-FileIntegrity

Untuk melihat apakah aliran integritas diaktifkan untuk data file, gunakan cmdlet Get-FileIntegrity .

PS C:\> Get-FileIntegrity -FileName 'C:\Docs\TextDocument.txt'

Anda juga dapat menggunakan cmdlet Get-Item untuk mendapatkan pengaturan aliran integritas untuk semua file dalam direktori tertentu.

PS C:\> Get-Item -Path 'C:\Docs\*' | Get-FileIntegrity

Set-FileIntegrity

Untuk mengaktifkan/menonaktifkan aliran integritas untuk data file, gunakan cmdlet Set-FileIntegrity .

PS C:\> Set-FileIntegrity -FileName 'H:\Docs\TextDocument.txt' -Enable $True

Anda juga dapat menggunakan cmdlet Get-Item untuk mengatur pengaturan aliran integritas untuk semua file dalam folder tertentu.

PS C:\> Get-Item -Path 'H\Docs\*' | Set-FileIntegrity -Enable $True

Cmdlet Set-FileIntegrity juga dapat digunakan pada volume dan direktori secara langsung.

PS C:\> Set-FileIntegrity H:\ -Enable $True
PS C:\> Set-FileIntegrity H:\Docs -Enable $True

Referensi Tambahan