Pertanyaan Wawancara MongoDB Teratas

Pertanyaan Wawancara Mongodb Teratas



MongoDB adalah sistem manajemen basis data NoSQL sumber terbuka; itu tidak hanya memberikan kemudahan dalam menyimpan data yang tidak terstruktur tetapi juga mengelolanya. Setiap kali muncul pertanyaan tentang bagaimana mengelola jutaan baris data tidak terstruktur, MongoDB direkomendasikan.

Versi pertama MongoDB dirilis pada Februari 2007 oleh 10 gen Perusahaan perangkat lunak, kemudian pada tahun 2013, 10gen mengubah nama perusahaan menjadi MongoDB Inc.

MongoDB adalah database NoSQL yang digunakan untuk menyimpan data dalam bentuk dokumen JSON karena fitur ini, sejumlah besar data tidak terstruktur dapat dengan mudah disimpan dan dikelola di MongoDB. Himpunan dokumen-dokumen ini yang memiliki data dikenal sebagai koleksi. Dan koleksi ini mirip dengan tabel yang digunakan dalam database relasional untuk menyimpan data.







Ada banyak alasan mengapa MongoDB sangat populer dibandingkan dengan database relasional dan NoSQL lainnya, beberapa di antaranya adalah:



  • Pengembang dapat menentukan struktur sesuai dengan pasangan kunci-nilai
  • Seperti database relasional, baris dan kolom tidak diperlukan untuk data
  • Hirarki struktur MongoDB memungkinkan untuk menyimpan data dalam bentuk array dan juga dapat menyimpan data yang kompleks
  • Itu membuat pengembangnya mengelola database dengan mudah karena mendukung banyak bahasa pemrograman
  • Ini juga mendukung fitur gridFS dan replikasi

Karena popularitasnya, ada banyak peluang kerja bagi para pengembang yang bekerja dengan MongoDB. Artikel ini terkait dengan pertanyaan yang paling penting dan sering ditanyakan oleh banyak organisasi papan atas.



pertanyaan wawancara MongoDB

Pertanyaan yang paling sering diajukan dibagi menjadi tiga level: level Dasar, level Menengah, dan level Pakar.





Level dasar

Pertanyaan-pertanyaan ini terkait dengan konsep dasar dan terminologi MongoDB, dan dalam sebuah wawancara diharapkan setiap kandidat harus menjawab pertanyaan-pertanyaan ini.

Pertanyaan 1: apa yang Anda ketahui tentang database NoSQL dan tipenya?
Basis data NoSQL adalah basis data yang tidak menyimpan data dalam tabel seperti yang dilakukan basis data SQL alih-alih menyimpan data dalam bentuk lain seperti dokumen dan formulir nilai kunci.



Ada empat jenis penting dari database NoSQL:

  • Database dokumen: Database ini menyimpan data dalam bentuk dokumen JSON, dokumen-dokumen ini digabungkan untuk membentuk koleksi, dan koleksi ini digabungkan untuk membentuk database.
  • Database nilai kunci: Database ini menyimpan data dalam bentuk key-values, misalnya “Name = John”, dalam contoh ini “Name” adalah key, dan “John” adalah value.
  • Toko kolom lebar: Database ini menyimpan data dalam bentuk tabel dinamis, tidak seperti database relasional, tabel ini tidak terstruktur.
  • Database grafik: Basis data ini berisi tepi dan simpul; node digunakan untuk menyimpan informasi sedangkan edge digunakan untuk menunjukkan hubungan antar node.

Pertanyaan 2: tipe database NoSQL MongoDB yang mana?
Basis data MongoDB milik basis data dokumen, yang artinya menyimpan data sesuai dengan dokumen JSON. Itu tidak mengikuti skema apa pun dan memungkinkan penyisipan semua jenis data di dalamnya.

Pertanyaan 3: Mana yang lebih baik di antara database MongoDB dan SQL?
MongoDB lebih baik daripada database SQL sedemikian rupa sehingga dapat menangani data tidak terstruktur sedangkan database SQL hanya menangani data terstruktur dan menyimpannya tanpa batasan apa pun tidak seperti di database relasional. Karena fiturnya yang tanpa skema, kueri ditangani dengan cepat di MongoDB dibandingkan dengan database SQL karena data tidak ditempatkan dalam bentuk tabel dan dalam sejumlah tabel alih-alih itu, data ditempatkan di tempat yang sama sehingga mudah bagi kueri untuk mengakses data, dan MongoDB memungkinkan datanya dipetakan dalam bahasa pemrograman lain yang memberikan kemudahan bagi penggunanya untuk mengerjakannya.

Pertanyaan 4: Apa itu dokumen dan koleksi di MongoDB?
Data disimpan di MongoDB dalam bentuk dokumen, kemudian dokumen-dokumen ini digabungkan menjadi satu kumpulan, dan sejumlah kumpulan digabungkan menjadi satu database. Untuk memahaminya, perhatikan contoh database data_sekolah, database data_sekolah berisi kumpulan-kumpulan yang memiliki data_kelas di dalamnya, dan selanjutnya dokumen-dokumen ini (data_kelas) berisi data siswa (data_siswa) dalam bentuk dokumen.

Pertanyaan 5: Apa itu tipe data MongoDB?
Ada banyak tipe data yang didukung MongoDB:

Rangkaian Tipe data string menyimpan data dalam bentuk huruf/karakter dan harus berukuran 8 byte dan termasuk dalam UTF-8, misalnya Jone.
Bilangan bulat Ini menyimpan angka hingga 64 bit tetapi ukurannya dapat bervariasi tergantung pada server, misalnya 1,54.
Boolean Ini digunakan untuk menyimpan nilai boolean yang bisa berupa 0 atau 1, misalnya, John ada di kelas? Jawabannya bisa ya atau tidak.
Dobel Ini menyimpan angka mengambang seperti 22,8.
Tombol Min/Maks Ini digunakan untuk membandingkan nilai min dan maks.
Array Ini digunakan untuk menyimpan array atau beberapa nilai dalam satu kunci.
Stempel waktu Ketika ada dokumen yang dimodifikasi, itu dapat menyimpan catatan modifikasi.
Obyek Ini menyimpan dokumen yang disematkan
Batal Ini menyimpan nilai nol.
Simbol Ini adalah jenis string dan dapat menyimpan bahasa yang terkait dengan simbol
Tanggal Waktu dan tanggal saat ini dapat disimpan dalam tipe data ini
ID objek Dokumen memiliki id unik, id ini dapat disimpan dalam tipe data ini
Data biner Data biner yang juga dikenal sebagai bahasa mesin disimpan di dalamnya.
Kode Kode Javascript disimpan dalam dokumen dengan bantuan tipe data ini
Ekspresi reguler Ekspresi apa pun dapat disimpan dalam tipe data ini

Pertanyaan 6: Apa alternatif untuk MongoDB?
MongoDB adalah jenis database NoSQL, dengan bantuan data terdistribusi besar disimpan dalam dokumen BSON. Alternatif MongoDB dapat berupa Amazon DynamoDB, Microsoft Azure Cosmos DB, Couchbase, PostgreSQL, Redis, dan Cassandra.

Tingkat menengah

Pertanyaan-pertanyaan ini lebih terkait dengan konsep-konsep lanjutan daripada dasar-dasar dan dalam sebuah wawancara, kandidat rata-rata diharapkan menjawab pertanyaan-pertanyaan ini.

Pertanyaan 7: Bagaimana kita bisa membandingkan MongoDB dan SQL pada level tinggi?
Basis data SQL adalah basis data relasional yang menyimpan data dengan cara yang terstruktur dan terorganisir dengan baik dalam bentuk baris dan kolom yang membuat tabel, sedangkan basis data MongoDB adalah basis data NoSQL, yang menyimpan data dalam dokumen, dokumen-dokumen ini secara kolektif dikenal sebagai koleksi, dan koleksi ini digabungkan untuk membentuk database.

Pertanyaan 8: Apakah ada fungsi seperti manajemen transaksi ACID dan penguncian di MongoDB?
Tidak, secara default MongoDB tidak menyediakan transaksi ACID apa pun pada multi-dokumen, namun dapat memberikan dukungan transaksi ACID pada satu dokumen.

Pertanyaan 9: Apa itu pengindeksan di MongoDB?
Di MongoDB, indeks adalah struktur data khusus yang menempati beberapa bidang database dan menyimpan beberapa data untuk membuat indeks. Indeks meningkatkan kemampuan pencarian database, alih-alih mencari hal tertentu dari banyak dokumen, pengguna dapat langsung membuka dokumen yang ditentukan dengan bantuan pengindeksan.

{
Identitas Siswa = 1
Nama siswa = 'Paul'
Negara = 'Amerika Serikat'
}

Pada contoh di atas, “Student_id =1” adalah indeks, jadi jika ada yang mencari dengan Student_id atau 1, dokumen berikut akan dibuka.

Pertanyaan 10: Di MongoDB, Bisakah indeks dibuat di bidang array?

Ya, kita bisa membuat indeks pada bidang array di MongoDB, dan mengindeks setiap nilai array. Faktanya, MongoDB dengan sendirinya membuat indeks multikey dan Anda tidak perlu menentukannya jika ada bidang indeks yang berupa array.

Pertanyaan 11: Apakah mungkin untuk menjalankan beberapa operasi Javascript dalam satu instance MongoDB?
Dimungkinkan untuk menjalankan beberapa operasi Javascript dalam satu instance mongod karena dalam versi 2.4 mesin javascript MongoDB V8 ditambahkan.

Pertanyaan 12: Apa itu penjurnalan di MongoDB?
Saat penjurnalan diaktifkan di MongoDB, itu membuat subdirektori Jurnal, di dalam direktori /data/db , yang merupakan jalur yang ditentukan oleh dbPath, secara default. Saat penjurnalan berjalan, MongoDB mengedit dan menyimpan data dalam memori dan disk, sebelum perubahan data ditransfer ke disk. Sangat membantu jika terjadi kesalahan karena perubahan data belum disimpan, MongoDB dapat mengambil perubahan dari file Jurnal dan dapat memastikan daya tahan file.

Tingkat Pakar

Pertanyaan-pertanyaan ini terkait dengan konsep MongoDB yang lebih maju, diharapkan kandidat ahli harus menjawab pertanyaan-pertanyaan ini.

Pertanyaan 13: Apa itu proses sharding MongoDB?
Di MongoDB, sharding adalah proses mendistribusikan data dari database besar di antara banyak server MongoDB. Sehingga mudah untuk menangani data dan juga dapat merespon pertanyaan dengan kecepatan tinggi. MongoDB mendukung penskalaan horizontal melalui sharding.

Cluster MongoDB terdiri dari tiga bagian yaitu pecahan ; itu juga dikenal sebagai replika dan tersedia di setiap server, mangga ; mereka bertindak sebagai penerjemah antara server dan beling, dan server konfigurasi ; mereka menyimpan pengaturan konfigurasi cluster dan metadata.

Pertanyaan 14: Apa itu scale-out dan bagaimana hal itu terjadi di MongoDB?
Ketika ada banyak data pada satu node, beberapa node mendekat ke node yang dimuat, untuk mendistribusikan muatannya. Proses berbagi beban dari satu node ke node yang berbeda ini disebut scale-out dan juga dikenal sebagai horizontal scaling.

Pertanyaan 15: Bagaimana kita bisa mendapatkan informasi tentang rencana kueri dengan menggunakan bahasa kueri MongoDB?
Itu menjelaskan() perintah digunakan dan mendukung mode yang 'allPlansExecution, executionStats, dan queryPlanner'. Sebagai contoh:

db . restoran . menjelaskan ( 'executionStats' ) . Temukan (
{ 'Masakan' : 1 , 'wilayah' : 'Brooklyn' }
) ;

Pada contoh di atas, data restoran diambil dari perintah explain().

Pertanyaan 16: Jelaskan Kerangka Agregasi MongoDB.
Di MongoDB, mengambil data dari koleksi yang berbeda dan setelah perhitungan mengembalikan hasil gabungan yang dikenal sebagai Agregasi. Ini memiliki tiga langkah, pertama, ia akan mengambil input dan memfilter dokumen yang kita butuhkan dari dokumen menggunakan $match(), kemudian kita melakukan pekerjaan agregasi pada informasi yang difilter menggunakan $group(), dan terakhir, kita mengurutkan hasil kami menggunakan $sort().

Pertanyaan 17: Apakah mungkin untuk mengunci lebih dari satu database menggunakan operasi MongoDB?
Ya, MongoDB dapat mengunci lebih dari satu database, untuk mengunci banyak database secara instan, kami menggunakan operasi MongoDB db.copyDatabase() , sedangkan operasi db.repairDatabase() menerapkan kunci global untuk mengedit database dan juga membatasi operasi lain yang akan diterapkan hingga dihapus.

Pertanyaan 18: Apa itu GridFS di MongoDB?
File besar yang melebihi 16 MB seperti gambar, file video, dan file audio dikelola di MongoDB dengan menggunakan GridFS dan disimpan di bagian dan potongan file alih-alih satu dokumen, secara default MongoDB hanya mendukung dua format yaitu fs. file dan fs.chunks untuk menyimpan potongan dan metadata file.

Pertanyaan 19: Bagaimana Anda bisa menggambarkan fenomena replikasi di MongoDB?
Replikasi adalah proses sinkronisasi data di antara banyak server, sedangkan MongoDB menyalin data dan mereplikasinya ke server yang berbeda, sehingga jika terjadi kerusakan server, data dapat diambil dari server lain yang menjamin keamanan data.

Pertanyaan 20: Apa itu Mongo Shell?
Shell mongo adalah platform JavaScript, di mana kita dapat berinteraksi dengan MongoDB dan juga dapat membuat modifikasi pada data menggunakan kueri. Itu juga digunakan untuk tujuan administratif seperti memelihara instance database. Secara default, mongo shell disertakan dalam file instalasi tetapi jika tidak diinstal, Anda dapat menginstalnya dari server MongoDB.

Kesimpulan

MongoDB adalah database NoSQL yang populer, yang digunakan untuk mengelola data dalam bentuk dokumen dan sangat mudah ditangani karena tanpa skema. Ini digunakan oleh banyak perusahaan terkenal seperti Twitter dan Facebook. Karena popularitasnya, ada banyak peluang kerja bagi para pengembang yang bekerja di antarmuka MongoDB. Dalam artikel ini, pertanyaan wawancara MongoDB yang paling sering diajukan telah dibagikan dengan jawaban yang sesuai.