Apa Itu Object Storage S3 dan Bedanya dengan Disk?
Object storage menyimpan file sebagai objek lewat API S3, berbeda dari disk. Pahami kegunaannya untuk backup dan media, biayanya, dan opsi self-hosted.
Jawaban singkat
Object storage menyimpan data sebagai objek di dalam bucket dan diakses lewat API HTTP, umumnya kompatibel dengan S3. Berbeda dari disk server, kapasitasnya bertambah sesuai isi dan dibayar sesuai pemakaian, cocok untuk backup, media, dan file statis, tapi tidak untuk database aktif.
Daftar isi
Toko online berjalan lancar selama setahun, lalu suatu pagi website tidak bisa menerima upload gambar produk. Penyebabnya sederhana: disk VPS penuh. Folder gambar, file backup harian, dan lampiran pesanan menumpuk di satu disk yang sama dengan sistem operasi dan database. Menaikkan ukuran disk memang menyelesaikan masalah hari itu, tapi kejadian yang sama akan terulang. Di titik inilah object storage biasanya mulai dipertimbangkan.
Object storage adalah cara menyimpan data sebagai objek, yaitu file beserta metadata dan kunci unik, di dalam wadah yang disebut bucket. Objek tidak diakses lewat folder di sistem operasi, tapi lewat permintaan HTTP ke sebuah API. API yang paling luas dipakai adalah S3, yang berasal dari layanan Amazon S3 dan kini didukung oleh banyak penyedia dan perangkat lunak lain sebagai standar de facto.
Tiga cara menyimpan data di server
Supaya posisinya jelas, bandingkan object storage dengan dua jenis penyimpanan yang lebih dikenal.
Block storage adalah disk yang kamu kenal di VPS. Sistem operasi melihatnya sebagai perangkat mentah, memformatnya dengan sistem file, lalu menyimpan file di sana. Aksesnya sangat cepat dan mendukung perubahan kecil di tengah file, sehingga cocok untuk sistem operasi dan database.
File storage adalah folder bersama yang diakses beberapa server lewat jaringan, misalnya dengan NFS atau SMB. Strukturnya tetap berupa folder dan file, dan berguna bila beberapa mesin perlu membaca file yang sama.
Object storage meninggalkan konsep folder secara teknis. Setiap objek punya kunci, misalnya produk/2026/sepatu-merah.jpg, yang terlihat seperti path tapi sebenarnya hanya nama. Objek ditulis dan dibaca utuh lewat HTTP. Mengubah sebagian isi objek tidak bisa dilakukan seperti di disk: kamu mengunggah ulang objek itu.
| Aspek | Block storage (disk) | File storage | Object storage (S3) |
|---|---|---|---|
| Cara akses | Dipasang ke satu server sebagai disk | Folder bersama lewat jaringan | API HTTP dari mana saja |
| Struktur | Sistem file di atas blok | Folder dan file | Bucket dan objek dengan kunci |
| Kapasitas | Sesuai ukuran disk yang dipesan | Sesuai ukuran volume | Bertambah sesuai isi, tanpa perlu dipesan di awal |
| Kecepatan untuk perubahan kecil | Sangat baik | Baik | Kurang cocok, objek ditulis ulang utuh |
| Cocok untuk | Sistem operasi, database, aplikasi | File kerja bersama antar-server | Backup, arsip, gambar, video, file statis |
| Model biaya umum | Per kapasitas yang dipesan | Per kapasitas yang dipesan | Per data tersimpan, ditambah request dan transfer keluar |
Untuk apa object storage biasanya dipakai
Kegunaan yang sering ditemui adalah backup. Menyimpan backup di disk server yang sama ibarat menaruh kunci cadangan di dalam rumah yang sama: kalau servernya rusak atau diretas, backup ikut hilang. Object storage berada di sistem terpisah, dan banyak alat backup seperti restic, rclone, atau fitur backup panel hosting bisa mengirim data langsung ke bucket S3. Prinsip backup di lokasi terpisah dibahas di backup website otomatis.
Fitur pendukungnya juga relevan untuk backup. Versioning menyimpan versi lama objek saat ditimpa atau dihapus. Lifecycle rule menghapus atau memindahkan objek lama secara otomatis setelah jangka waktu tertentu. Sebagian penyedia juga menawarkan object lock, yang mencegah objek dihapus selama periode tertentu, berguna untuk melindungi backup dari ransomware. Ketersediaan fitur ini berbeda per penyedia, jadi cek dokumentasinya.
Kegunaan kedua adalah media dan file unggahan. Aplikasi seperti WordPress, toko online, atau aplikasi internal bisa diatur menyimpan gambar dan lampiran di bucket, bukan di disk server. Server aplikasi jadi ringan dan mudah diganti, karena data penting tidak lagi menempel di sana.
Kegunaan ketiga adalah file statis, seperti gambar website, file unduhan, atau bahkan situs statis utuh. Bucket bisa disajikan langsung lewat HTTP, dan sering dipasangkan dengan CDN agar file dikirim dari lokasi terdekat pengunjung. Cara kerja CDN dijelaskan di apa itu CDN.
Yang tidak cocok adalah database aktif. Database butuh perubahan kecil yang sangat sering dan cepat di tengah file, dan itu wilayah block storage. Simpan database di disk, lalu kirim hasil dump-nya ke object storage sebagai backup.
Memahami model biaya, termasuk egress
Biaya object storage biasanya terdiri dari beberapa komponen, dan masing-masing penyedia mengaturnya berbeda.
Komponen pertama adalah kapasitas tersimpan, dihitung per GB atau TB per bulan. Komponen kedua adalah jumlah request, misalnya biaya per seribu operasi unggah atau baca. Komponen ketiga, yang paling sering mengejutkan, adalah egress, yaitu biaya transfer data keluar dari penyedia ke internet. Mengunggah data biasanya gratis, tapi mengunduhnya kembali bisa berbayar.
Egress penting untuk dua skenario. Kalau bucket dipakai menyajikan media ke banyak pengunjung, transfer keluar bisa jauh lebih besar dari biaya penyimpanannya. Dan saat terjadi bencana, memulihkan backup berukuran besar berarti mengunduh semuanya sekaligus. Beberapa penyedia tidak memungut egress atau memberi kuota gratis tertentu, sementara yang lain menghitung per GB. Ada juga kelas penyimpanan arsip yang murah untuk disimpan, tapi mengenakan biaya dan waktu tunggu saat data diambil kembali.
Sebelum memilih, hitung tiga hal: berapa banyak data yang disimpan, seberapa sering dibaca, dan berapa besar data yang perlu diunduh saat pemulihan. Lalu cocokkan dengan halaman harga resmi tiap penyedia.
Opsi S3-compatible yang bisa dijalankan sendiri
Karena API S3 sudah jadi standar, ada beberapa perangkat lunak open-source yang menyediakan API serupa di server milikmu sendiri. Contoh yang dikenal adalah MinIO, Garage, SeaweedFS, dan gateway objek milik Ceph. Aplikasi yang bisa berbicara S3 umumnya bisa diarahkan ke layanan ini hanya dengan mengganti alamat endpoint dan kunci akses.
Menjalankan sendiri memberi kendali penuh atas lokasi data dan tidak ada biaya per request. Namun tanggung jawabnya ikut pindah: kamu yang menjamin disk tidak rusak, data direplikasi, dan layanan tetap diperbarui. Untuk backup, ada satu syarat yang tidak boleh dilanggar: server object storage harus berbeda dari server yang di-backup, idealnya di lokasi lain. Status lisensi dan pemeliharaan proyek open-source juga bisa berubah dari waktu ke waktu, jadi cek halaman resmi proyeknya sebelum memilih. Pertimbangan menjalankan aplikasi sendiri secara umum ada di panduan self-hosting untuk bisnis.
Apa pun pilihannya, amankan aksesnya. Buat kunci akses terpisah untuk setiap aplikasi dengan izin seminimal mungkin, jangan jadikan bucket publik kecuali memang untuk file yang boleh dilihat semua orang, dan jangan simpan kunci akses di repository kode.
Kesimpulan
Object storage menyimpan data sebagai objek yang diakses lewat API S3, dengan kapasitas yang tumbuh sesuai kebutuhan dan biaya per pemakaian. Ia tidak menggantikan disk server untuk sistem operasi dan database, tapi sangat cocok untuk backup di lokasi terpisah, media unggahan, dan file statis. Sebelum memakainya, pahami model biaya penyedia, terutama egress, agar tidak ada kejutan saat data perlu diambil kembali.


