Apa itu Write Amplification Factor (WAF)?

Write Amplification Factor (WAF) adalah nilai numerik yang menunjukkan jumlah data yang ditulis oleh pengontrol SSD dibandingkan dengan jumlah data yang ditulis oleh pengontrol flash dari host. Untuk menghitungnya, jumlah data yang ditulis ke media flash dibagi dengan jumlah data yang ditulis oleh host.

Misalnya, jika sebuah SSD menulis 2 gigabyte (GB) data ke disk dan host juga menulis 2 GB, maka WAF-nya adalah 1. Nilai WAF 1 menunjukkan tidak ada write amplification. Namun, jika SSD menulis 8 GB data sedangkan host hanya menulis 2 GB, maka WAF-nya adalah 4. Ini berarti SSD menulis empat kali lebih banyak data ke disk dibandingkan dengan yang dikirim oleh host.

SSD berbasis flash rentan terhadap write amplification karena cara kerja mereka dalam menulis dan menghapus data.

Mengapa WAF itu penting?

WAF penting karena mengukur seberapa besar tingkat write amplification dalam SSD. Write amplification terjadi ketika SSD berbasis NAND flash menulis lebih banyak data ke disk dibandingkan yang diberikan oleh host.

WAF yang tinggi dapat berdampak negatif pada kinerja penyimpanan dan daya tahan SSD. Idealnya, WAF harus sedekat mungkin dengan 1. Namun, mempertahankan angka ini dalam jangka panjang cukup sulit. Seiring bertambahnya data yang disimpan, write amplification juga meningkat karena diperlukan manajemen data tambahan untuk menyesuaikan data baru atau yang diperbarui.

Ukuran file dan jenis beban kerja juga mempengaruhi WAF.

Bagaimana cara kerja Write Amplification?

Tidak seperti hard disk drive (HDD), SSD membagi penyimpanan ke dalam blok, lalu membagi blok menjadi halaman (pages) yang berisi sel data individual. Data dibaca dan ditulis pada tingkat halaman, tetapi hanya dapat dihapus pada tingkat blok.

Selain itu, SSD berbasis flash tidak bisa menimpa data secara langsung. Jika ada data yang diperbarui, data lama akan ditandai sebagai tidak valid atau usang, dan data yang diperbarui akan ditulis ke halaman kosong. Data baru juga ditulis ke halaman kosong.

Halaman kosong adalah halaman yang belum pernah menyimpan data atau yang datanya telah dihapus. Halaman dengan data usang harus dihapus sebelum bisa digunakan kembali. Namun, penghapusan hanya bisa dilakukan di tingkat blok. Oleh karena itu, sebelum blok dapat dihapus, semua halaman yang masih menyimpan data yang valid harus dipindahkan ke blok lain.

WAF dan Siklus P/E

Untuk mengoptimalkan penyimpanan, SSD terus memindahkan data yang masih valid ke blok baru dan menghapus blok yang berisi data lama. Proses ini menghasilkan banyak siklus program/erase (P/E cycle) sepanjang umur SSD. Siklus P/E tambahan meningkatkan write amplification karena lebih banyak data yang ditulis ke SSD daripada yang diberikan oleh host.

Pengontrol flash dalam SSD mengelola siklus P/E. Pengontrol ini menggunakan sistem pemetaan logis-ke-fisik yang dikenal sebagai Logical Block Addressing (LBA) untuk mengelola data. Saat data ditulis ulang, pengontrol flash akan menulis data baru ke lokasi berbeda dan memperbarui LBA dengan lokasi baru tersebut. Sementara itu, data lama yang tidak valid tetap ada di lokasi lama sampai akhirnya dihapus.

Semua proses tambahan ini meningkatkan WAF. Jika write amplification terlalu tinggi, kinerja SSD bisa menurun dan umur SSD bisa lebih pendek. Sebuah SSD hanya dapat menahan jumlah siklus P/E tertentu sebelum sel penyimpanannya mulai aus dan tidak dapat digunakan lagi. Karena setiap sel hanya dapat menangani jumlah siklus P/E tertentu sebelum mengalami masalah keandalan, WAF yang tinggi sering kali menjadi tanda bahwa SSD mendekati akhir masa pakainya.

Cara Mencegah Dampak Negatif WAF

Mengurangi jumlah penulisan ke SSD dapat meningkatkan kinerja dan memperpanjang umur perangkat. Berikut beberapa cara untuk melakukannya:

  • Overprovisioning. Menyediakan ruang flash tambahan dalam SSD yang tidak dapat diakses pengguna. Overprovisioning membantu manajemen data dan memperpanjang umur SSD.
  • Error correction code (ECC). Kesalahan bit diperbaiki dengan kode koreksi kesalahan, yang membantu memperpanjang masa pakai SSD.
  • Wear leveling. Wear leveling mendistribusikan siklus P/E ke seluruh blok SSD untuk mencegah penggunaan berlebihan pada satu blok tertentu.
  • Trim command. Data lama dihapus lebih cepat dengan perintah Trim, yang mengkonsolidasikan ruang kosong di SSD dan memungkinkan garbage collection dilakukan pada tingkat halaman, bukan blok.
  • Firmware pintar. Perangkat lunak dalam SSD yang mengelola penyimpanan flash untuk memperpanjang umur SSD.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *