Data dalam MongoDB memiliki schema.documents yang fleksibel dalam koleksi yang sama. Mereka tidak perlu memiliki kumpulan bidang atau struktur yang sama, dan bidang umum dalam dokumen koleksi dapat menyimpan berbagai jenis data.
Beberapa pertimbangan saat merancang Skema di MongoDB
- Rancang skema Anda sesuai dengan kebutuhan pengguna.
- Gabungkan objek ke dalam satu dokumen jika Anda akan menggunakannya bersama-sama. Jika tidak, pisahkan mereka (tetapi pastikan tidak perlu bergabung).
- Gandakan data (tetapi terbatas) karena ruang disk lebih hemat dibandingkan dengan menghitung waktu.
- Gabungkan while write, not on read
- Optimalkan skema Anda untuk kasus penggunaan yang paling sering.
- Lakukan agregasi kompleks dalam skema.
Contoh
Misalkan klien membutuhkan desain database untuk blog / situs web dan melihat perbedaan antara RDBMS dan desain skema MongoDB. Situs web memiliki persyaratan berikut.
- Setiap posting memiliki judul, uraian, dan url yang unik.
- Setiap pos dapat memiliki satu atau lebih tag.
- Setiap posting memiliki nama penerbit dan jumlah total suka.
- Setiap pos memiliki komentar yang diberikan oleh pengguna bersama dengan nama, pesan, waktu-data, dan suka mereka.
- Di setiap pos, bisa ada nol atau lebih banyak komentar.
Dalam skema RDBMS, desain untuk persyaratan di atas akan memiliki minimal tiga tabel.
Sementara dalam skema MongoDB, desain akan memiliki satu pos koleksi dan struktur berikut :
Jadi saat menampilkan semua data, di RDBMS Anda perlu bergabung (joins) dengan tiga tabel dan di MongoDB, data akan ditampilkan dari satu koleksi saja. Bagaimana menarik bukan?
Diambil dari tutorialspoint
Comments
Post a Comment