Pertanyaan yang saya anjurkan ditanyakan ke vendor atau tim IT bukan "apakah ada backup?", karena jawabannya hampir selalu "ada". Pertanyaan yang lebih berguna: kapan terakhir kali backup itu dipakai untuk memulihkan sistem di tempat lain, dan berapa lama prosesnya?
Kalau jawabannya diam sebentar, itu informasi yang cukup.
Kenapa backup bisa ada tapi tidak berguna
Backup yang gagal jarang gagal dengan ribut. Beberapa penyebab yang paling sering terjadi:
- Skrip backup berjalan tiap malam, tetapi sejak password database diganti tiga bulan lalu ia menghasilkan berkas kosong berukuran beberapa kilobyte, dan tidak ada yang melihatnya.
- Backup hanya mencakup database, padahal berkas unggahan pengguna (foto, scan dokumen, lampiran) tersimpan di folder terpisah di server yang sama.
- Backup tersimpan di server yang sama dengan aplikasinya. Kalau disknya rusak atau server dihapus penyedia hosting, keduanya hilang bersamaan.
- Berkas backup ada dan utuh, tetapi tidak ada yang tahu cara memasangnya kembali, karena orang yang menyusun skripnya sudah tidak ada di proyek.
Tidak satu pun dari kasus di atas kelihatan dari daftar berkas. Semuanya baru ketahuan saat dibutuhkan, yaitu saat waktu paling mahal.
Tes pemulihan yang bisa dilakukan satu sore
Anda tidak perlu simulasi bencana besar. Cukup lakukan ini sekali, lalu ulangi setiap beberapa bulan:
- Ambil berkas backup terbaru, bukan yang sengaja disiapkan untuk tes.
- Pasang di komputer atau server lain yang bukan produksi. Laptop pun cukup untuk aplikasi kecil.
- Jalankan aplikasinya dan buka tiga atau empat data yang Anda tahu persis isinya: transaksi kemarin, pengguna yang baru didaftarkan minggu ini, satu berkas lampiran.
- Catat berapa lama seluruhnya berlangsung, dan langkah mana yang butuh bertanya ke seseorang.
Hasil catatan terakhir itu paling berharga. Kalau pemulihan ternyata hanya bisa dilakukan oleh satu orang, Anda baru saja menemukan risiko yang lebih besar daripada risiko kehilangan data.
Tiga angka yang perlu disepakati
Di luar teknisnya, ada tiga hal yang sebaiknya disepakati tertulis dengan vendor atau tim internal:
- Seberapa sering backup dibuat. Kalau backup harian, dalam skenario terburuk Anda kehilangan data sehari penuh. Untuk aplikasi kasir atau pelayanan publik, itu bisa berarti ratusan transaksi yang harus dimasukkan ulang dari kertas.
- Berapa lama backup disimpan. Kesalahan input kadang baru disadari dua minggu kemudian. Kalau backup hanya disimpan tujuh hari, versi yang benar sudah tertimpa.
- Berapa lama pemulihan yang masih bisa diterima. Jawaban "secepatnya" bukan jawaban. Satu hari? Setengah hari? Angka ini menentukan apakah cukup dengan backup biasa atau perlu server cadangan.
Soal biaya
Backup yang disimpan di tempat terpisah, misalnya penyimpanan objek dari penyedia berbeda, untuk aplikasi skala instansi atau koperasi biasanya hanya beberapa puluh ribu rupiah per bulan. Jauh lebih murah daripada satu hari sistem mati dan data yang harus dibangun ulang.
Yang mahal justru kebiasaan tidak pernah mengeceknya. Jadwalkan tes pemulihan itu di kalender seperti Anda menjadwalkan rapat rutin, karena kalau tidak ada yang menjadwalkan, tidak ada yang akan melakukannya.