MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

MongoDB - mongfiles

Nah, "Objek GridFS" dalam konteks ini berarti nama objek yang disimpan dalam koleksi GridFS. Perbedaannya mungkin paling baik dijelaskan oleh --local pilihan pada halaman manual mongfiles.

Yang perlu Anda pertimbangkan di sini adalah apa yang telah Anda lakukan adalah mengirimkan item dengan nama file "sama" menggunakan utilitas mongfiles. Sebagaimana dicatat di halaman manual untuk utilitas itu, perilaku default untuk put (lihat perintah ) adalah membuat entri baru di dalam toko. Ini dapat diganti dengan --replace pilihan sehingga konten yang ada ditemukan dan ditimpa dengan konten baru yang telah Anda buat.

Singkatnya, terlepas dari apakah file berisi konten yang berbeda atau tidak, Anda telah membuat beberapa hal dengan "Nama objek" yang sama. Sejauh menyangkut utilitas mongfiles, ia hanya tahu cara mengambil dengan "Nama objek" sehingga ia hanya akan mengambil yang pertama ditemukan, menurut aturannya.

Sekarang di sebagian besar implementasi API GridFS, get yang sebenarnya operasi biasanya dilakukan oleh _id . Setiap "Objek" yang Anda buat dengan cara ini masih memiliki _id uniknya sendiri value, jadi ketika ini diterapkan maka Anda bisa mendapatkan "Object" yang Anda inginkan.

Beberapa implementasi API menambahkan metode jenis kueri tambahan untuk menemukan berdasarkan "nama file" atau informasi meta data lainnya. Tapi kebanyakan mereka tidak repot karena ini benar-benar hanya standar .find() atau .findOne() operasi pada koleksi apa pun yang menyimpan meta-data dan referensi konten ( fs.files secara default ). Ini memberikan lebih dari cukup cara untuk "menemukan" objek tertentu dan mengeluarkan _id itu nilai melalui get antarmuka API tersebut.

Jadi sementara mongofiles adalah utilitas yang bagus untuk melakukan operasi tipe CRUD dasar dari baris perintah, itu hanya sebuah utilitas dan bukan implementasi utama dari "bagaimana melakukannya". Jadi sebagai utilitas, ia menyediakan bentuk "kenyamanan" untuk mengatur dan mendapatkan objek, dengan menggunakan bagian "nama file" dari pengidentifikasi Objek.

Juga perlu diperhatikan adalah bahwa Anda harus benar-benar memperlakukan penyimpanan GridFS seperti sistem file, dan jaga agar "nama file" Anda tetap unik seperti yang diperlukan dalam sistem file.

Tetapi untuk mongofiles utilitas, "nama" adalah semua yang Anda harus pergi untuk mengambil informasi. Cobalah untuk tidak melakukan itu, atau gunakan API bahasa pilihan Anda untuk melakukan pekerjaan itu.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bagaimana saya bisa mengubah bidang _id di Koleksi MongoDB menjadi User_id?

  2. Java MongoDB mendapatkan nilai untuk sub dokumen

  3. kerangka kerja agregasi mongodb cocok dengan dokumen bersarang

  4. Mongorestore ke database yang berbeda

  5. findOne Subdocument dalam bahasa luwak