Keuntungan menyimpan gambar/gumpalan dalam database
- Menyimpan gambar secara otomatis menjadi bagian dari transaksi Anda
- Tidak perlu membersihkan sistem file dan menyinkronkannya dengan database
- Akses ke gambar dikontrol melalui cara yang sama seperti akses ke data lainnya
- Hanya satu cadangan yang perlu diperhatikan
- Basis data biasanya lebih cocok untuk menyimpan jutaan (jika bukan miliaran) catatan. Di sistem file Anda harus menemukan distribusi yang cerdas di beberapa direktori. Satu direktori tidak akan mampu menangani jutaan file secara efisien.
- Untuk beberapa beban kerja, menyimpan gambar dalam database sebenarnya bisa lebih cepat.
Untuk SQL Server, Microsoft sebenarnya telah menguji ini:
http://research.microsoft.com/apps/pubs/default.aspx?id=64525
Saya tidak akan terkejut jika database lain berperilaku serupa.
Kekurangan:
- Membuat database Anda dan cadangan Anda jauh lebih besar (pikirkan waktu yang diperlukan untuk memulihkannya).
- sistem file biasanya lebih baik dengan pencadangan tambahan (kecuali jika Anda memiliki RMAN Oracle)
- gambar tidak dapat diakses oleh aplikasi lain (misalnya WebServer, alat pengubahan ukuran gambar, Server FTP)
- Gambar tidak dapat disebarkan ke seluruh jaringan distribusi konten untuk penyeimbangan muatan dalam aplikasi web (untuk melepaskan muatan dari server aplikasi)
- kepercayaan umum adalah, bahwa pengambilan dari database akan lebih lambat.
- untuk beberapa database yang mengambil blob sebenarnya dapat menurunkan efisiensi cache database (tidak demikian untuk Oracle, SQL Server dan PostgreSQL. Saya tidak tahu untuk MySQL)