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

Memperkenalkan Bagan Pencarian di MongoDB

Jika Anda tidak terbiasa dengan MongoDB, ini adalah model data NoSQL berorientasi dokumen, yang menggunakan dokumen daripada tabel dan baris seperti yang akan Anda temukan dengan tabel relasional.

Dengan demikian, karena cara pembuatannya yang unik, MongoDB adalah salah satu model data terbaik untuk basis data berkinerja tinggi dengan skalabilitas yang luar biasa. Tentu saja, bukan berarti tidak ada persaingan, dan MongoDB sering dibandingkan dengan Firebase atau Cassandra.

Tentu saja, masalahnya kemudian menjadi bahwa permintaan kueri apa pun pada penyimpanan data sebesar itu dapat menimbulkan masalah, dan memerlukan tingkat tertentu untuk menjadi guru kueri.

Untungnya, MongoDB telah memperkenalkan fitur baru yang tidak hanya menghilangkan kueri kode, tetapi juga membuatnya sesederhana beberapa klik. Artinya, Anda tidak perlu menghabiskan banyak waktu dan kerumitan untuk melakukan jenis kueri dan bergabung yang sama seperti biasanya.

Kueri Tradisional di MongoDB

Meskipun database berorientasi dokumen sudah sangat fleksibel, mungkin masih ada situasi di mana Anda mungkin memerlukan data langsung dalam beberapa koleksi. Misalnya, satu koleksi dapat berisi data pengguna dan koleksi lainnya dapat berisi aktivitas pengguna. Ini bahkan dapat diperluas untuk memiliki beberapa kumpulan data untuk berbagai aplikasi, situs web, dan sebagainya.

Itulah sebabnya MongoDB Query Language (MQL) lahir, dan menyediakan cara bagi programmer untuk membuat kueri yang kompleks. Faktanya, MongoDB memiliki seluruh halaman untuk dokumen kueri dan cara menjalankannya. Jika Anda tidak terbiasa dengannya, berikut adalah proses langkah-demi-langkah cepat tentang cara kerjanya, sehingga Anda dapat membandingkannya dengan Bagan Pencarian baru nanti:

Pertama, Anda perlu menghubungkan instance MongoDB Anda dengan meneruskan URI ke shell Mongo dan kemudian menggunakan --password

mongo.exe mongodb://$[hostlist]/$[database]?authSource=$[authSource] --username $[username]

Kedua, beralih ke Database, dalam hal ini, kami akan menggunakan database 'test' hipotetis

use test

Pada titik ini, Anda akan memuat lebih banyak data ke MongoDB jika diperlukan. Anda dapat melakukannya dengan metode insertMany():

db.inventory.insertMany( [

   { "item": "journal", "qty": 25, "size": { "h": 14, "w": 21, "uom": "cm" }, "status": "A" },

    { "item": "notebook", "qty": 50, "size": { "h": 8.5, "w": 11, "uom": "in" }, "status": "A" },

    { "item": "paper", "qty": 100, "size": { "h": 8.5, "w": 11, "uom": "in" }, "status": "D" },

    { "item": "planner", "qty": 75, "size": { "h": 22.85, "w": 30, "uom": "cm" }, "status": "D" },

    { "item": "postcard", "qty": 45, "size": { "h": 10, "w": 15.25, "uom": "cm" }, "status": "A" }

]);

Kemudian muncul permintaan aktual melalui pengambilan dokumen dalam koleksi tertentu:

myCursor = db.inventory.find( { status: "D" } )

Biasanya, ini akan menampilkan 20 dokumen dan mengembalikan kursor, tetapi jika Anda mau. Jika kumpulan hasil Anda lebih besar, Anda sebaiknya mengulangi hasil:

while (myCursor.hasNext()) {

print(tojson(myCursor.next()));

}

Terakhir, Anda akan memeriksa hasilnya untuk memastikan semuanya sudah benar. Perhatikan pada contoh di bawah, nilai ObjectID Anda akan berbeda:

{

 item: "paper",

 qty: 100,

 size: {

   h: 8.5,

   w: 11,

   uom: "in"

   },

 status: "D"

},

{

 item: "planner",

 qty: 75,

 size: {

   h: 22.85,

   w: 30,

   uom: "cm"

   },

 status: "D"

}

Manfaat Bagan Pencarian

Seperti yang Anda lihat, prosesnya cukup rumit dengan banyak langkah, jadi masuk akal jika MongoDB ingin membuat prosesnya sedikit lebih efisien. Tentu saja, ini lebih dari sekadar membuat segalanya lebih mudah dan ada banyak manfaat dari LookUp Charts.

Misalnya, Anda dapat memperoleh wawasan yang lebih baik melalui format satu tampilan dengan menggabungkan beberapa koleksi. Lebih penting lagi, memiliki grafik visual dan mudah diurai yang diperbarui secara langsung sesuai dengan spesifikasi Anda sangat berharga. Hal ini sering memungkinkan Anda memperoleh informasi dengan segera hanya dari inspeksi visual, terutama jika Anda membagi informasi ke dalam kategori lebih lanjut.

Terakhir, manfaat terbesar adalah tidak perlu mempelajari dan menguasai MQL hanya untuk satu database, yang mengurangi hambatan masuk bagi banyak programmer.

Cara Menggunakan Bagan Pencarian

Baiklah, jadi kami telah melihat bagaimana kueri biasanya bekerja di MongoDB, dan kami memiliki ide bagus tentang bagaimana Bagan Pencarian dapat membantu kami mendapatkan lebih banyak informasi penting dengan lebih cepat, tetapi bagaimana cara kerjanya?

Nah, langkah-langkahnya relatif sederhana:

  1. Pertama, Anda harus memilih sumber data dengan memilihnya di menu tarik-turun di kiri atas.
  2. Kemudian, klik ' . . .' bidang di antara koleksi Anda dan klik 'Bidang pencarian'
  3. Saat jendela baru muncul, pilih 'Sumber Data Jarak Jauh' tempat Anda akan mengambil data.
  4. Kemudian, Anda harus memilih 'Bidang Jarak Jauh' dan itu akan menjadi bidang yang umum di antara dua sumber data Anda.
  5. Akhirnya, Anda dapat menyimpan nama tertentu untuk bidang hasil, dan jika tidak, cukup klik 'Simpan'

Dan itu saja! Anda sekarang dapat menarik dan melepas dari bidang baru ke pembuat bagan. Jangan lupa untuk memilih metode Pengurangan Array juga, atau Anda mungkin tidak melihat grafik apa pun yang muncul untuk Anda.

Membiasakan Diri Anda dengan Bagan MongoDB

Tentu saja, pada titik ini penting untuk menyebutkan bahwa fitur Pencarian baru adalah bagian dari Bagan MongoDB, dan MongoDB sendiri memiliki beberapa artikel menarik untuk membantu Anda memahami perangkat lunak:

  1. Cara Baru untuk Menyesuaikan Bagan Anda
  2. Memvisualisasikan Data Pesanan
  3. Menambahkan Bidang Pencarian (yang berbeda dari Bagan Pencarian)

Kesimpulan

Seperti yang Anda lihat, Bagan Pencarian yang baru adalah alat yang sangat kuat yang secara besar-besaran mengurangi pengetahuan teknis kueri MongoDB. Hanya dengan beberapa langkah sederhana, Anda dapat melihat bagan informasi yang digabungkan dari beberapa koleksi, dan segera memahami informasi baru.

Bandingkan dengan metode lama untuk melakukannya yang memerlukan beberapa langkah pengkodean, serta memahami kode itu, dan Anda mulai melihat betapa briliannya rilis baru ini.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Meteor:Kode keluar mongo tak terduga 100. Mulai ulang. Tidak dapat memulai server mongo

  2. MongoDB $radiansToDegrees

  3. NodeJS dan MongoDB FindAndModify() perlu dihapus atau diperbarui

  4. Pengikisan Web dengan Scrapy dan MongoDB

  5. Bagaimana saya bisa mengurutkan koleksi Meteor berdasarkan waktu penyisipan?