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 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 3

Pada tutorial sebelumnya kita sudah membuat database mongodb dengan nama database "universitas" dengan collection adalah "mahasiswa" dengan isi "nim, nama, email, dan phone". Sekarang adalah mengkonfigurasi agar database dapat berinteraksi atau terkoneksi dengan nodejs app kita. Buka atom editor anda, atau bisa mengetikan pada terminal "atom" kemudian tambahkan project folder crudapps pada atom anda Nah anda sudah memiliki struktur folder aplikasi webapps tersebut. Sekarang anda membuat file config.js pada root folder (maksudnya adalah file tersebut berada pada folder crudapps) bukan didalam folder bin dan sebagainya. Anda juga bisa membuat file secara labgsung pada terminal dengan mengetikan "touch config.js" sehingga anda memiliki sebuah file baru dengan nama config.js. File config.js akan mendefinisikan url database berjalan dan port yang digunakan, nantinya file config.js tersebut akan di panggil di file app.js. B...

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...