Performa backup dianggap sebagai salah satu elemen paling penting dalam perlindungan data. Dalam survei yang dilakukan oleh Synology terhadap 1.500 pengambil keputusan IT, lebih dari setengah responden menyatakan bahwa kecepatan backup adalah salah satu tantangan utama mereka.
Proses backup yang lambat dapat menghambat operasional produksi sebuah organisasi. Jika tugas backup memakan waktu lebih lama dari yang dijadwalkan, tugas tersebut bisa terus berjalan tanpa henti dan meninggalkan beban kerja penting tanpa perlindungan.
Sebagai layanan penting yang melindungi data yang tersimpan di sistem Synology, Hyper Backup telah mendukung mode backup inkremental sejak pertama kali diperkenalkan. Hal ini membantu mengurangi waktu yang dibutuhkan untuk tugas backup. Namun, seiring dengan pertumbuhan data bisnis yang semakin cepat, kebutuhan akan backup yang lebih cepat pun meningkat. Menyadari tren ini, kami melakukan evaluasi ulang terhadap desain Hyper Backup dan memperkenalkan serangkaian peningkatan performa dalam DSM 7.0.
Untuk mencapai tujuan meningkatkan kecepatan backup, kami membongkar proses eksekusi tugas Hyper Backup menjadi enam langkah, yaitu:
- Inisiasi tugas backup
- Pengumpulan metadata file
- Analisis konten backup dan inisiasi
- Deduplikasi
- Perakitan file backup
- Pemrosesan data backup
Pada setiap langkah tersebut, kami menggunakan alat seperti perf, eBPF, dan iPerf untuk menganalisis elemen on-CPU (seperti penggunaan CPU dan memori) serta off-CPU (seperti disk I/O dan pemanggilan sistem). Dari hasil analisis, kami menemukan bahwa dengan meningkatkan dua mekanisme kunci, performa Hyper Backup dapat ditingkatkan secara signifikan, terutama dalam skenario yang melibatkan jumlah data yang sangat besar.
Pemrosesan Paralel yang Ditingkatkan
Pertama, kami menyempurnakan alur kerja paralel dalam tugas backup. Dalam setiap layanan backup, “provider” membuat tugas, sedangkan “consumer” menjalankannya. Sebagai contoh, provider dapat mengidentifikasi file yang perlu dicadangkan, kemudian consumer akan melakukan operasi baca/tulis. Selama proses backup berlangsung, keseimbangan antara waktu tunggu dan beban kerja dari provider dan consumer sangatlah penting. Faktor seperti distribusi tugas dan alokasi sumber daya CPU/memori turut mempengaruhi keseimbangan ini.
Pada kenyataannya, menyeimbangkan tugas dan alokasi sumber daya dalam pengembangan perangkat lunak adalah proses yang berkelanjutan. Setelah evaluasi dan restrukturisasi menyeluruh, kami memodularisasi tugas backup di DSM 7.0 untuk menghindari bentrokan sumber daya. Penyempurnaan ini memungkinkan penanganan setiap segmen proses backup berjalan secara bersamaan dengan lebih mulus, mengurangi kemacetan (bottleneck), dan meningkatkan efisiensi backup inkremental hingga 30%.
Proses Pengumpulan Metadata yang Dirancang Ulang
Selanjutnya, kami menyederhanakan dan mengonsolidasi proses pengumpulan metadata. Selama proses backup, metadata dalam jumlah besar diperlukan untuk backup inkremental dan deduplikasi. Sebelumnya, proses pengumpulan metadata ini tersebar di berbagai prosedur, yang memperlambat kecepatan backup. Untuk mengatasi masalah ini, kami memeriksa permintaan metadata di setiap proses, menghapus duplikasi, dan menyederhanakan prosedur pengumpulan metadata.
Selain itu, kami memperkenalkan mekanisme cache memori dan sentralisasi pengambilan metadata untuk mengurangi beban I/O pada hard disk. Hal ini mempercepat kecepatan tugas backup inkremental dan deduplikasi.
Dengan peningkatan ini, performa Hyper Backup mengalami peningkatan signifikan. Dalam pengujian laboratorium kami menggunakan dataset berisi 10 juta file dengan total ukuran 18TB dan tingkat perubahan file sebesar 5%, versi terbaru Hyper Backup menunjukkan peningkatan performa hingga 95% dibandingkan versi sebelumnya. Efek ini sangat terlihat pada skenario dengan jumlah file melebihi satu juta file. Oleh karena itu, kami sangat menyarankan bisnis dengan jumlah data yang besar untuk segera memperbarui DSM dan Hyper Backup ke versi terbaru.
Langkah Selanjutnya
Ke depan, kami akan terus mengeksplorasi cara mendeteksi perubahan file dengan lebih cepat dan akurat selama eksekusi tugas backup. Kami juga berfokus untuk menghadapi tantangan yang lebih besar, seperti kasus ekstrem dengan lebih dari 100 juta perubahan file atau situasi tak terduga seperti pemadaman listrik mendadak.
Mengoptimalkan performa produk adalah upaya yang terus berjalan. Synology berkomitmen untuk selalu memberikan pengalaman pengguna yang lebih baik.