Sejauh PostgreSQL bersangkutan, ketik text
adalah keluar dari pertanyaan. Lebih lambat, menggunakan lebih banyak ruang dan lebih rawan kesalahan daripada bytea
untuk tujuan tersebut.
Pada dasarnya ada 3 pendekatan:
-
Gunakan jenis
bytea
(pada dasarnya pg setara dengan tipe gumpalan SQL). -
Gunakan "objek besar ".
-
Simpan gumpalan sebagai file di sistem file dan hanya menyimpan nama file dalam database.
Masing-masing memiliki kelebihan dan kekurangannya sendiri.
1. agak sederhana untuk ditangani tetapi membutuhkan ruang disk paling banyak. Beberapa decoding dan encoding diperlukan, yang membuatnya juga lambat. Cadangan tumbuh dengan cepat dalam ukuran!
2. sedikit canggung dalam penanganannya, tetapi Anda memiliki infrastruktur sendiri untuk memanipulasi gumpalan - jika Anda membutuhkannya. Dan Anda dapat lebih mudah membuat cadangan terpisah.
3. sejauh ini merupakan cara tercepat dan menggunakan ruang disk paling sedikit. Tapi itu tidak memberikan integritas referensial yang Anda dapatkan saat Anda menyimpan di dalam database.
Saya memiliki sejumlah implementasi seperti itu untuk file gambar:simpan gambar mini kecil dalam bidang byte untuk integritas referensial dan referensi cepat. Simpan gambar asli sebagai file di sistem file. Tentu saja, Anda perlu memikirkan kapan dan bagaimana cara menghapus file yang kedaluwarsa, cara mencadangkan file eksternal, dan semacamnya.