Bagaimana saya bisa menyimpan gambar dalam database MongoDB bukan hanya teks? Bisakah saya membuat array gambar dalam database MongoDB? Apakah mungkin untuk melakukan hal yang sama untuk video?
GridFS untuk dokumen> 16MB. Tidak semua data biner sebesar ini. Selain bisa melampaui batas itu, apakah ada manfaat lain untuk menggunakan GridFS bukan hanya tipe BinData?
Brandon Fitzpatrick
3
Video akan cenderung> 16MB sehingga jawaban ini mungkin masuk akal. Mungkin harus menyebutkan ini.
Chanoch
1
ada solusi lain, daripada menggunakan GridFS?
Abhishek Mani
1
@AbhishekMani solusi lain adalah tidak menyimpannya di MongoDB sama sekali. Sekarang, pada tahun 2018, jauh lebih mudah untuk menulis data ini ke sesuatu seperti penyimpanan Amazon S3 atau Azure BLOB.
Dokumen MongoDB BSON dibatasi pada 16 MB. Jadi, jika ukuran total array file Anda kurang dari itu, Anda dapat menyimpannya langsung di dokumen Anda menggunakan BinData data .
Video, gambar, PDF, spreadsheet, dll. - tidak masalah, semuanya diperlakukan sama. Terserah aplikasi Anda untuk mengembalikan header tipe konten yang sesuai untuk menampilkannya.
Ada plugin Mongoose yang tersedia di NPM disebut file luwak. Ini memungkinkan Anda menambahkan bidang file ke Skema Mongoose untuk mengunggah file. Saya belum pernah menggunakannya tetapi mungkin terbukti bermanfaat. Jika gambarnya sangat kecil, Anda bisa Base64 menyandikannya dan menyimpan string ke database.
Anda bisa menggunakan tipe data bin jika Anda menggunakan bahasa scripting apa pun untuk menyimpan file / gambar di MongoDB. Bin data dikembangkan untuk menyimpan file ukuran kecil.
Lihat driver bahasa scripting Anda. Untuk PHP, klik di sini .
base64
, lihat stackoverflow.com/questions/11442356 Saya juga menemukan menge.io/2015/03/24/storing-small-images-in- mongodb titik awal yang sangat bagus.Jawaban:
Silakan lihat dokumen GridFS untuk perincian tentang penyimpanan data biner tersebut.
Dukungan untuk bahasa spesifik Anda harus ditautkan ke bagian bawah layar.
sumber
Dokumen MongoDB BSON dibatasi pada 16 MB. Jadi, jika ukuran total array file Anda kurang dari itu, Anda dapat menyimpannya langsung di dokumen Anda menggunakan BinData data .
Video, gambar, PDF, spreadsheet, dll. - tidak masalah, semuanya diperlakukan sama. Terserah aplikasi Anda untuk mengembalikan header tipe konten yang sesuai untuk menampilkannya.
Lihat dokumentasi GridFS untuk lebih jelasnya.
sumber
Anda dapat mencoba yang ini:
sumber
http://blog.mongodb.org/post/183689081/storing-large-objects-and-files-in-mongodb
Ada plugin Mongoose yang tersedia di NPM disebut file luwak. Ini memungkinkan Anda menambahkan bidang file ke Skema Mongoose untuk mengunggah file. Saya belum pernah menggunakannya tetapi mungkin terbukti bermanfaat. Jika gambarnya sangat kecil, Anda bisa Base64 menyandikannya dan menyimpan string ke database.
Menyimpan beberapa file kecil (di bawah 1MB) dengan MongoDB di NodeJS TANPA GridFS
sumber
Anda bisa menggunakan tipe data bin jika Anda menggunakan bahasa scripting apa pun untuk menyimpan file / gambar di MongoDB. Bin data dikembangkan untuk menyimpan file ukuran kecil.
Lihat driver bahasa scripting Anda. Untuk PHP, klik di sini .
sumber
pasang pustaka di bawah ini
hubungkan ur mongo db:
Tentukan Skema basis data
menggunakan middleware Multer untuk mengunggah foto di sisi server.
kirim req ke db kami
sumber
Menurut Anda:
Dengan kode ini Anda dapat menambahkan gambar tunggal dan banyak di MongoDB.
sumber
Ini berhasil untuk saya,
sumber