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

Desain Skema MongoDB - Koleksi atau Referensi Baru?

Pendahuluan:

Dalam kasus Anda, kedua varian akan baik karena kategori hanya enumerasi dan Anda tidak perlu memuat kategori untuk menampilkan kursus, Anda hanya perlu membuat beberapa enumerasi dan mendapatkan nama kategori dengan id.

Tetapi misalnya jika Anda memiliki tabel db.users dan setiap pengguna memiliki koleksi db.courses, Anda tidak perlu membuat dokumen terpisah, Anda hanya perlu kursus koleksi bersarang. Dan itu sangat keren karena di sql Anda perlu membuat tabel terpisah dengan referensi satu ke banyak.

Salah satu manfaat besar dari database dokumen adalah Anda dapat membuat dokumen besar dengan koleksi bersarang dan tidak perlu menggabungkan tabel.

Jawaban:

Jadi dalam kasus Anda, saya menyarankan dua cara:

  1. Buat enumerasi untuk kategori dan dapatkan nama kategori dengan id( tetapi tidak memuat dari mongo).
  2. Cukup salin nama kategori dalam kursus ( Tetapi kasus pertama lebih baik karena jika nama kategori diubah, Anda perlu memperbarui setiap kursus dengan nama kategori baru).



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Grup MongoDB berdasarkan Fungsi

  2. Menggabungkan dua koleksi di MongoDB

  3. MongoError:Topologi ditutup, harap sambungkan tampaknya terkait dengan MongoClient.close() dan klien tidak akan berfungsi saat menggunakannya

  4. Pengumpulan kunci Mongodb hingga bendera disetel?

  5. mongodb agregat untuk mendapatkan panjang array/daftar bersarang pertama