Skip to main content

Data Modeling MongoDb


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

Popular posts from this blog

CRUD dengan NodeJs dan MongoDb Bagian 2

Setelah kita membuat aplikasi kasirapp pada part 1, kita akan melanjutkan pembuatan CRUD nodejs mongodb . Pada kesempatan kali ini kita membutuhkan editor Atom yang sudah kita install sebelumnya. Ikuti langkah berikut ini : Langkah 1 : Buka kembali terminal anda (Ctrl + Alt + T) lalu aktifkan server mongodb dengan mengetik "service mongodb start" , maka mongodb anda sudah berjalan. Jika anda menemukan error "Failed to start mongodb.service: Unit mongodb.service is masked." maka ketikan terlebih dahulu " sudo systemctl unmask mongodb" untuk menghapus unmask, lalu ketik kembali "service mongodb start". Langkah 2  Buka aplikasi editor atom anda, lalu tambahkan project kasirapp pada atom anda. Pada atom editor pilih file -> add project folder -> arahkan pada folder Documents -> kasirapp, maka project kasirapp sudah ada pada atom anda. Sekarang anda bisa melihat struktur project kasirapp pada atom anda. Langkah ...

CRUD Node Js MongoDb dengan Bootstrap studi kasus data mahasiswa Part 2

Sebelumnya kita sudah menginstall packages yang dibutuhkan. pada tahap ini kita akan membuat database mongodb. Langkah 1 : Masuk ke commad mongo dengan mengetikan pada terminal ubuntu anda "mongo" Langkah 2 : Buatlah sebuah database dengan nama "universitas" dengan mengetik "use universitas" Jika anda berhasil, maka anda akan menemukan informasi "switched to db universitas" Langkah 3 : Membuat field key unik untuk email "db.mahasiswa.createIndex({"email":1},{unique:true})" Langkah 4 : Menginputkan beberapa data pada collection "mahasiswa" "db.mahasiswa.insert({nim:"111",nama:"Ipung Purwono",email:"ipungofficial@hotmail.com",phone:"089812345678"})" "db.mahasiswa.insert({nim:"112",nama:"Joko Purwono",email:"jokoofficial@hotmail.com",phone:"089812345678"})" "db.mahasiswa.insert({nim:...

CRUD Node Js MongoDb dengan Bootstrap studi kasus data mahasiswa Part 1

Pada tutorial sebelumnya kita sudah membuat CRUD juga, namun belum menggunakan markup language yaitu html dan css yang biasa kita gunakan. Nah pada kesempatan kali ini saya akan membuatnya dengan Bootstrap Framework agar lebih mudah dan cepat. Tutorial ini lumayan panjang karena sangat komplit dari installasi packages yang dibutuhkan, membuat database mongodb beserta collectionnya, templating dan konfigurasi bootstrap tentunya. Pada tutorial kali ini kita akan membuat langkah-langkah umum yaitu : Install Express.js untuk kerangka aplikasinya beserta packages lain seperti body parser, cookie parser, ejs, path dan sebagainya. Membuat database kampus dengan collection mahasiswa. Nah yang akan di CRUD kan adalah data mahasiswa. Membuat konfigurasi routes dan view  Konfigurasi dengan bootstrap tentunya Baiklah itu adalah 4 langkah umum yang akan kita buat. Sekarang kita akan memulai langkah pertama : Langkah 1 : Arahkan folder ke Documents pada ubuntu anda dengan men...