Soalan Temuduga MongoDB Teratas

Soalan Temuduga Mongodb Teratas



MongoDB ialah sistem pengurusan pangkalan data NoSQL sumber terbuka; ia bukan sahaja memberikan kemudahan dalam menyimpan data tidak berstruktur tetapi juga menguruskannya. Setiap kali timbul persoalan tentang cara mengurus berjuta-juta baris data tidak berstruktur, MongoDB disyorkan.

Versi pertama MongoDB telah dikeluarkan pada Februari 2007 oleh 10 gen Syarikat perisian, kemudian pada 2013, 10gen menukar nama syarikat kepada MongoDB Inc.

MongoDB ialah pangkalan data NoSQL yang digunakan untuk menyimpan data dalam borang dokumen JSON kerana ciri ini, sejumlah besar data tidak berstruktur boleh disimpan dan diuruskan dengan mudah dalam MongoDB. Set dokumen yang mempunyai data ini dikenali sebagai koleksi. Dan koleksi ini serupa dengan jadual yang digunakan dalam pangkalan data hubungan untuk menyimpan data.







Terdapat banyak sebab mengapa MongoDB begitu popular berbanding pangkalan data relasional dan NoSQL yang lain, antaranya ialah:



  • Pembangun boleh menentukan struktur mengikut pasangan nilai kunci
  • Seperti pangkalan data hubungan, baris dan lajur tidak diperlukan untuk data
  • Hierarki struktur MongoDB membolehkan untuk menyimpan data dalam bentuk tatasusunan dan juga boleh menyimpan data yang kompleks
  • Ia menjadikan pembangunnya mengurus pangkalan data dengan mudah kerana ia menyokong berbilang bahasa pengaturcaraan
  • Ia juga menyokong ciri gridFS dan replikasi

Kerana popularitinya, terdapat banyak peluang pekerjaan untuk pembangun yang bekerja dengan MongoDB. Artikel ini berkaitan dengan soalan yang paling penting dan lazim ditanya oleh banyak organisasi yang mendapat penilaian tertinggi.



Soalan temuduga MongoDB

Soalan yang paling kerap ditanya dibahagikan kepada tiga peringkat: Peringkat asas, peringkat pertengahan dan peringkat Pakar.





Peringkat Asas

Soalan-soalan ini berkaitan dengan konsep asas dan istilah MongoDB, dan dalam temu bual, diharapkan setiap calon harus menjawab soalan-soalan ini.

Soalan 1: apakah yang Anda tahu tentang pangkalan data NoSQL dan jenisnya?
Pangkalan data NoSQL ialah pangkalan data yang tidak menyimpan data dalam jadual seperti yang dilakukan oleh pangkalan data SQL dan bukannya menyimpan data dalam bentuk lain seperti dokumen dan borang nilai kunci.



Terdapat empat jenis pangkalan data NoSQL yang penting:

  • Pangkalan data dokumen: Pangkalan data ini menyimpan data dalam bentuk dokumen JSON, dokumen ini bergabung untuk membentuk koleksi, dan koleksi ini bergabung untuk membentuk pangkalan data.
  • Pangkalan data nilai kunci: Pangkalan data ini menyimpan data dalam bentuk nilai kunci, contohnya, 'Nama = John', dalam contoh ini 'Nama' ialah kunci dan 'John' ialah nilai.
  • Kedai lajur luas: Pangkalan data ini menyimpan data dalam bentuk jadual dinamik, tidak seperti pangkalan data hubungan, jadual ini tidak berstruktur.
  • Pangkalan data graf: Pangkalan data ini mengandungi tepi dan nod; nod digunakan untuk menyimpan maklumat manakala tepi digunakan untuk menunjukkan hubungan antara nod.

Soalan 2: MongoDB jenis pangkalan data NoSQL yang manakah?
Pangkalan data MongoDB tergolong dalam pangkalan data dokumen, yang bermaksud ia menyimpan data mengikut dokumen JSON. Ia tidak mengikut sebarang skema dan membenarkan pemasukan sebarang jenis data di dalamnya.

Soalan 3: Mana satu yang lebih baik antara pangkalan data MongoDB dan SQL?
MongoDB lebih baik daripada pangkalan data SQL dengan cara yang boleh mengendalikan data tidak berstruktur manakala pangkalan data SQL hanya mengendalikan data berstruktur dan menyimpannya tanpa sebarang sekatan tidak seperti dalam pangkalan data hubungan. Kerana ciri tanpa skema, pertanyaan dikendalikan dengan pantas dalam MongoDB berbanding pangkalan data SQL kerana data tidak diletakkan dalam bentuk jadual dan dalam beberapa jadual sebaliknya, data diletakkan di tempat yang sama jadi ia adalah mudah untuk pertanyaan untuk mengakses data, dan MongoDB membenarkan datanya dipetakan dalam bahasa pengaturcaraan lain yang memberikan kemudahan kepada penggunanya untuk mengerjakannya.

Soalan 4: Apakah dokumen dan koleksi dalam MongoDB?
Data disimpan dalam MongoDB dalam bentuk dokumen, kemudian dokumen ini bergabung untuk membentuk koleksi, dan beberapa koleksi bergabung untuk membentuk pangkalan data. Untuk memahami perkara ini, pertimbangkan contoh pangkalan data data_sekolah, pangkalan data data_sekolah mengandungi koleksi yang mempunyai data_kelas di dalamnya, dan seterusnya, dokumen ini (data_kelas) mengandungi data pelajar (data_pelajar) dalam bentuk dokumen.

Soalan 5: Apakah jenis data MongoDB?
Terdapat banyak jenis data yang disokong oleh MongoDB:

Tali Jenis data rentetan menyimpan data dalam bentuk abjad/ aksara dan ia mestilah daripada 8 bait dan tergolong dalam UTF-8, sebagai contoh, Jone.
Integer Ia menyimpan nombor sehingga 64 bit tetapi saiznya boleh berbeza-beza bergantung pada pelayan, contohnya, 1,54.
Boolean Ini digunakan untuk menyimpan nilai boolean yang boleh sama ada 0 atau 1, sebagai contoh, John berada di dalam kelas? Jawapannya sama ada ya atau tidak.
berganda Ini menyimpan nombor terapung seperti 22.8.
Kekunci Min/Maks Ia digunakan untuk membandingkan nilai min dan maks.
Tatasusunan Ini digunakan untuk menyimpan tatasusunan atau berbilang nilai dalam satu kunci.
Cap masa Apabila mana-mana dokumen diubah suai, ia boleh menyimpan rekod pengubahsuaian.
Objek Ini menyimpan dokumen terbenam
batal Ia menyimpan nilai nol.
Simbol Ini ialah jenis rentetan dan boleh menyimpan bahasa tersebut yang berkaitan dengan simbol
Tarikh Masa dan tarikh semasa boleh disimpan dalam jenis data ini
ID objek Dokumen mempunyai id unik, id ini boleh disimpan dalam jenis data ini
Data binari Data binari yang juga dikenali sebagai bahasa mesin disimpan di dalamnya.
Kod Kod Javascript disimpan dalam dokumen dengan bantuan jenis data ini
Ekspresi biasa Sebarang ungkapan boleh disimpan dalam jenis data ini

Soalan 6: Apakah alternatif kepada MongoDB?
MongoDB ialah sejenis pangkalan data NoSQL, dengan bantuan data teragih yang besar disimpan dalam dokumen BSON. Alternatif MongoDB boleh menjadi Amazon DynamoDB, Microsoft Azure Cosmos DB, Couchbase, PostgreSQL, Redis, dan Cassandra.

Peringkat pertengahan

Soalan-soalan ini lebih berkaitan dengan konsep lanjutan daripada asas dan dalam temu bual, diharapkan rata-rata calon harus menjawab soalan-soalan ini.

Soalan 7: Bagaimanakah kita boleh membandingkan MongoDB dan SQL pada tahap yang tinggi?
Pangkalan data SQL ialah pangkalan data hubungan yang menyimpan data dalam cara yang tersusun dan teratur dalam bentuk baris dan lajur yang membuat jadual, sebaliknya, pangkalan data MongoDB ialah pangkalan data NoSQL, yang menyimpan data dalam dokumen, dokumen ini secara kolektif. dikenali sebagai koleksi, dan koleksi ini bergabung untuk membentuk pangkalan data.

Soalan 8: Adakah terdapat sebarang fungsi seperti pengurusan transaksi ACID dan mengunci dalam MongoDB?
Tidak, secara lalai MongoDB tidak menyediakan sebarang transaksi ACID pada berbilang dokumen, namun, ia boleh memberikan sokongan transaksi ACID pada satu dokumen.

Soalan 9: Apakah pengindeksan dalam MongoDB?
Dalam MongoDB, indeks ialah struktur data khas yang menduduki beberapa medan pangkalan data dan memegang beberapa data untuk membuat indeks. Indeks meningkatkan keupayaan mencari pangkalan data, daripada mencari perkara tertentu dari banyak dokumen, pengguna boleh terus pergi ke dokumen yang ditentukan dengan bantuan pengindeksan.

{
ID pelajar = 1
Nama pelajar = 'Paul'
Negara = 'Amerika Syarikat'
}

Dalam contoh di atas, 'ID_Pelajar =1' ialah indeks, jadi jika sesiapa mencari sama ada mengikut Student_id atau 1, dokumen berikut akan dibuka.

Soalan 10: Dalam MongoDB, Bolehkah indeks dibuat pada medan tatasusunan?

Ya, kita boleh mencipta indeks pada medan tatasusunan dalam MongoDB, dan ia mengindeks setiap nilai tatasusunan. Malah, MongoDB dengan sendirinya mencipta indeks berbilang kunci dan anda tidak perlu menentukannya jika mana-mana medan indeks ialah tatasusunan.

Soalan 11: Adakah mungkin untuk menjalankan berbilang operasi Javascript dalam satu contoh MongoDB?
Adalah mungkin untuk menjalankan berbilang operasi Javascript dalam satu contoh mongod kerana dalam versi 2.4 enjin javascript MongoDB V8 ditambah.

Soalan 12: Apakah jurnal dalam MongoDB?
Apabila penjurnalan didayakan dalam MongoDB, ia mencipta subdirektori Jurnal, dalam direktori /data/db , iaitu laluan yang ditakrifkan oleh dbPath, secara lalai. Semasa jurnal berjalan, MongoDB mengedit dan menyimpan data dalam memori dan pada cakera, sebelum perubahan data dipindahkan ke cakera. Ia amat membantu sekiranya terdapat sebarang ralat yang berlaku disebabkan perubahan dalam data yang belum disimpan, MongoDB boleh mendapatkan semula perubahan daripada fail Jurnal dan boleh memastikan ketahanan fail.

Tahap Pakar

Soalan-soalan ini berkaitan dengan konsep MongoDB yang lebih maju, adalah diharapkan bahawa calon kepakaran harus menjawab soalan-soalan ini.

Soalan 13: Apakah proses pemecahan MongoDB?
Dalam MongoDB, sharding ialah proses mengedarkan data pangkalan data yang besar di kalangan banyak pelayan MongoDB. Jadi mudah untuk mengendalikan data dan juga boleh menjawab pertanyaan dengan kelajuan tinggi. MongoDB menyokong penskalaan mendatar melalui sharding.

Kelompok MongoDB terdiri daripada tiga bahagian iaitu serpihan ; ia juga dikenali sebagai replika dan tersedia pada setiap pelayan, Mangga ; mereka bertindak sebagai penterjemah antara pelayan dan serpihan, dan pelayan konfigurasi ; mereka menyimpan tetapan konfigurasi kluster dan metadata.

Soalan 14: Apakah skala keluar dan bagaimana ia berlaku dalam MongoDB?
Apabila terdapat banyak data pada satu nod, berbilang nod membawa hampir kepada nod yang dimuatkan, untuk mengagihkan bebannya. Proses berkongsi beban satu nod kepada nod yang berbeza dipanggil skala keluar dan juga dikenali sebagai skala mendatar.

Soalan 15: Bagaimanakah kita boleh mendapatkan maklumat tentang rancangan pertanyaan dengan menggunakan bahasa pertanyaan MongoDB?
The terangkan() arahan digunakan dan ia menyokong mod yang 'allPlansExecution, executionStats, dan queryPlanner'. Sebagai contoh:

db . restoran . terangkan ( 'executionStats' ) . cari (
{ 'masakan' : 1 , 'borough' : 'Brooklyn' }
) ;

Dalam contoh di atas, data restoran diambil daripada perintah explain().

Soalan 16: Terangkan Rangka Kerja Pengagregatan MongoDB.
Dalam MongoDB, mengambil data daripada koleksi berbeza dan selepas pengiraan mengembalikan hasil gabungan yang dikenali sebagai Pengagregatan. Ia mempunyai tiga langkah, pertama, ia akan mengambil input dan menapis dokumen yang kami perlukan daripada dokumen menggunakan $match(), kemudian kami melakukan kerja pengagregatan pada maklumat yang ditapis menggunakan $group(), dan akhirnya, kami mengisih keputusan kami menggunakan $sort().

Soalan 17: Adakah mungkin untuk mengunci lebih daripada satu pangkalan data menggunakan operasi MongoDB?
Ya, MongoDB boleh mengunci lebih daripada satu pangkalan data, untuk mengunci berbilang pangkalan data serta-merta, kami menggunakan operasi MongoDB db.copyDatabase() , sedangkan operasi, db.repairDatabase() gunakan kunci global untuk mengedit pangkalan data dan juga menyekat operasi lain untuk dilaksanakan sehingga ia dialih keluar.

Soalan 18: Apakah GridFS dalam MongoDB?
Fail besar yang melebihi 16 MB seperti imej, fail video dan fail audio diuruskan dalam MongoDB dengan menggunakan GridFS dan disimpan dalam bahagian dan cebisan fail dan bukannya satu dokumen, secara lalai MongoDB hanya menyokong dua format iaitu fs. fail dan fs.chunks untuk menyimpan ketulan dan metadata fail.

Soalan 19: Bagaimanakah anda boleh menerangkan fenomena replikasi dalam MongoDB?
Replikasi ialah proses menyegerakkan data antara banyak pelayan, manakala MongoDB menyalin data dan mereplikasinya ke pelayan yang berbeza, jadi sekiranya berlaku ranap pelayan, data itu boleh diambil dari mana-mana pelayan lain yang memastikan keselamatan data.

Soalan 20: Apakah Mongo Shell?
Cangkang mongo ialah platform JavaScript, yang melaluinya kita boleh berinteraksi dengan MongoDB dan juga boleh membuat pengubahsuaian dalam data menggunakan pertanyaan. Ia juga digunakan untuk tujuan pentadbiran seperti mengekalkan contoh pangkalan data. Secara lalai, cangkerang mongo disertakan dalam fail pemasangan tetapi jika ia tidak dipasang, anda boleh memasangnya dari pelayan MongoDB.

Kesimpulan

MongoDB ialah pangkalan data NoSQL yang popular, yang digunakan untuk mengurus data dalam bentuk dokumen dan ia sangat mudah dikendalikan kerana ia tanpa skema. Ia digunakan oleh banyak syarikat terkenal seperti Twitter dan Facebook. Kerana popularitinya, terdapat banyak peluang pekerjaan untuk pembangun yang bekerja dalam antara muka MongoDB. Dalam artikel ini, soalan temuduga MongoDB yang paling kerap ditanya telah dikongsi dengan jawapan yang sesuai.