Apa nama database di mongodb?

MongoDB adalah program basis data berorientasi dokumen lintas platform yang tersedia sumber. Diklasifikasikan sebagai program database NoSQL, MongoDB menggunakan dokumen mirip JSON dengan skema opsional. MongoDB dikembangkan oleh MongoDB Inc. dan dilisensikan di bawah Lisensi Publik Sisi Server (SSPL) yang dianggap tidak bebas oleh beberapa distribusi

Sejarah[sunting]

Perusahaan perangkat lunak 10gen mulai mengembangkan MongoDB pada tahun 2007 sebagai komponen platform yang direncanakan sebagai produk layanan. Pada tahun 2009, perusahaan beralih ke model pengembangan sumber terbuka, dengan perusahaan menawarkan dukungan komersial dan layanan lainnya. Pada 2013, 10gen berganti nama menjadi MongoDB Inc

Pada 20 Oktober 2017, MongoDB menjadi perusahaan publik, terdaftar di NASDAQ sebagai MDB dengan harga IPO $24 per saham

MongoDB adalah perusahaan global dengan kantor pusat AS di New York City, AS dan kantor pusat Internasional di Dublin, Irlandia

Pada 30 Oktober 2019, MongoDB bekerja sama dengan Alibaba Cloud, yang akan menawarkan solusi MongoDB-as-a-service kepada pelanggannya. Pelanggan dapat menggunakan penawaran terkelola dari pusat data global BABA

Riwayat rilis MongoDBVersiTanggal rilisCatatan fiturRefs1. 0 Agustus 20091. 2 Desember 2009
  • lebih banyak indeks per koleksi
  • pembuatan indeks lebih cepat
  • memetakan/mengurangi
  • menyimpan fungsi JavaScript
  • waktu fsync yang dapat dikonfigurasi
  • beberapa fitur kecil dan perbaikan
1. 4 Maret 20101. 6 Agustus 2010
  • sharding siap produksi
  • set replika
  • dukungan untuk IPv6
1. 8 Maret 20112. 0 September 20112. 2 Agustus 20122. 4 Maret 2013
  • dukungan geospasial yang ditingkatkan
  • beralih ke mesin JavaScript V8
  • peningkatan keamanan
  • pencarian teks (beta)
  • indeks hash
2. 6 April 8, 2014
  • peningkatan agregasi
  • integrasi pencarian teks
  • peningkatan mesin kueri
  • protokol operasi tulis baru
  • peningkatan keamanan
3. 03 Maret 2015
  • Dukungan mesin penyimpanan WiredTiger
  • API mesin penyimpanan yang dapat dicolokkan
  • Otentikasi SCRAM-SHA-1
  • ditingkatkan menjelaskan fungsi
  • Manajer Operasi MongoDB
3. 2 8 Desember 2015
  • Mesin penyimpanan WiredTiger secara default
  • peningkatan pemilihan replikasi
  • config server sebagai set replika
  • readConcern
  • validasi dokumen
  • dipindahkan dari V8 ke SpiderMonkey
3. 4 29 November 2016
  • keprihatinan membaca linearizable
  • pandangan
  • pemeriksaan
3. 6 November 20174. 0 Juni 20184. 2 Agustus 20194. 4 Juli 20204. 4. 5 April 20214. 4. 6 Mei 20215. 013 Juli 2021
  • API berversi masa depan
  • enkripsi tingkat bidang sisi klien
  • resharding langsung
  • dukungan deret waktu
6. 0 Juli 2022

Fitur utama[sunting | sunting sumber]

Kueri ad-hoc[sunting | sunting sumber]

MongoDB mendukung bidang, kueri rentang, dan pencarian ekspresi reguler. Kueri dapat mengembalikan bidang dokumen tertentu dan juga menyertakan fungsi JavaScript yang ditentukan pengguna. Kueri juga dapat dikonfigurasi untuk mengembalikan sampel acak dari hasil dengan ukuran tertentu

Pengindeksan[sunting | sunting sumber]

Bidang dalam dokumen MongoDB dapat diindeks dengan indeks atau indeks primer dan sekunder

MongoDB menyediakan ketersediaan tinggi dengan kumpulan replika. Satu set replika terdiri dari dua atau lebih salinan data. Setiap anggota kumpulan replika dapat bertindak sebagai replika primer atau sekunder kapan saja. Semua penulisan dan pembacaan dilakukan pada replika utama secara default. Replika sekunder menyimpan salinan data primer menggunakan replikasi bawaan. Ketika replika primer gagal, kumpulan replika secara otomatis melakukan proses pemilihan untuk menentukan sekunder mana yang harus menjadi primer. Sekunder dapat secara opsional melayani operasi baca, tetapi data tersebut hanya konsisten pada akhirnya secara default

Jika penyebaran MongoDB yang direplikasi hanya memiliki satu anggota sekunder, daemon terpisah yang disebut arbiter harus ditambahkan ke set. Ini memiliki tanggung jawab tunggal, yaitu menyelesaikan pemilihan primer baru. Akibatnya, penyebaran MongoDB terdistribusi ideal membutuhkan setidaknya tiga server terpisah, bahkan dalam kasus hanya satu primer dan satu server sekunder.

Penyeimbangan beban[sunting | sunting sumber]

Skala MongoDB secara horizontal menggunakan sharding. Pengguna memilih kunci beling, yang menentukan bagaimana data dalam koleksi akan didistribusikan. Data dibagi menjadi rentang (berdasarkan kunci beling) dan didistribusikan ke beberapa pecahan. (Pecahan adalah master dengan satu atau lebih replika. ) Sebagai alternatif, kunci beling dapat di-hash untuk dipetakan ke beling – memungkinkan distribusi data yang merata

MongoDB dapat berjalan di beberapa server, menyeimbangkan beban atau menduplikasi data untuk menjaga sistem tetap berjalan jika terjadi kegagalan perangkat keras

Penyimpanan file[sunting | sunting sumber]

MongoDB dapat digunakan sebagai sistem file, yang disebut GridFS, dengan fitur load balancing dan replikasi data melalui beberapa mesin untuk menyimpan file

Fungsi ini, disebut sistem file grid, disertakan dengan driver MongoDB. MongoDB memperlihatkan fungsi untuk manipulasi file dan konten ke pengembang. GridFS dapat diakses menggunakan utilitas mongofiles atau plugin untuk Nginx dan lighttpd. GridFS membagi file menjadi beberapa bagian, atau bongkahan, dan menyimpan setiap bongkahan tersebut sebagai dokumen terpisah

Agregasi[sunting | sunting sumber]

MongoDB menyediakan tiga cara untuk melakukan agregasi. pipa agregasi, fungsi pengurangan peta, dan metode agregasi tujuan tunggal

Pengurangan peta dapat digunakan untuk pemrosesan batch data dan operasi agregasi. Namun menurut dokumentasi MongoDB, Agregation Pipeline memberikan kinerja yang lebih baik untuk sebagian besar operasi agregasi

Kerangka agregasi memungkinkan pengguna untuk mendapatkan jenis hasil yang menggunakan klausa SQL GROUP BY. Operator agregasi dapat dirangkai untuk membentuk pipa – analog dengan pipa Unix. Kerangka agregasi mencakup operator $lookup yang dapat menggabungkan dokumen dari banyak koleksi, serta operator statistik seperti standar deviasi

Eksekusi JavaScript sisi server[sunting | sunting sumber]

JavaScript dapat digunakan dalam kueri, fungsi agregasi (seperti MapReduce), dan dikirim langsung ke database untuk dieksekusi

Koleksi tertutup[sunting | sunting sumber]

MongoDB mendukung koleksi berukuran tetap yang disebut koleksi tertutup. Jenis koleksi ini mempertahankan urutan penyisipan dan, setelah ukuran yang ditentukan tercapai, berperilaku seperti antrean melingkar

Transaksi[sunting | sunting sumber]

MongoDB mengklaim mendukung transaksi ACID multi-dokumen sejak 4. 0 rilis pada Juni 2018. Klaim ini ternyata tidak benar karena MongoDB melanggar isolasi snapshot

Edisi[sunting | sunting sumber]

Edisi Komunitas MongoDB gratis dan tersedia untuk Windows, Linux, dan macOS

Server Perusahaan MongoDB[sunting | sunting sumber]

MongoDB Enterprise Server adalah edisi komersial MongoDB, tersedia sebagai bagian dari langganan MongoDB Enterprise Advanced

Atlas MongoDB[sunting | sunting sumber]

MongoDB juga tersedia sebagai layanan terkelola sepenuhnya berdasarkan permintaan. MongoDB Atlas berjalan di AWS, Microsoft Azure, dan Google Cloud Platform

Pada 10 Maret 2022, MongoDB memperingatkan penggunanya di Rusia dan Belarusia bahwa data mereka yang disimpan di platform MongoDB Atlas akan dihancurkan

Arsitektur[sunting | sunting sumber]

Aksesibilitas bahasa pemrograman[sunting | sunting sumber]

MongoDB memiliki driver resmi untuk bahasa pemrograman utama dan lingkungan pengembangan. Ada juga sejumlah besar driver tidak resmi atau yang didukung komunitas untuk bahasa dan kerangka kerja pemrograman lainnya

Akses tanpa server[sunting | sunting sumber]

Manajemen dan front-end grafis[sunting | sunting sumber]

Rekam penyisipan di MongoDB dengan Robomongo 0. 8. 5

Antarmuka utama ke database adalah mongo shell. Sejak MongoDB 3. 2, Kompas MongoDB diperkenalkan sebagai GUI asli. Ada produk dan proyek pihak ketiga yang menawarkan antarmuka pengguna untuk administrasi dan tampilan data

Lisensi[sunting | sunting sumber]

Pada Oktober 2018, MongoDB dirilis di bawah Lisensi Publik Sisi Server (SSPL), lisensi tidak bebas yang dikembangkan oleh proyek. Ini menggantikan Lisensi Publik Umum GNU Affero, dan hampir identik dengan Lisensi Publik Umum GNU versi 3, tetapi mengharuskan mereka yang membuat perangkat lunak tersedia untuk umum sebagai bagian dari "layanan" harus membuat seluruh kode sumber layanan (sejauh pengguna . Sebaliknya, AGPL hanya mensyaratkan kode sumber perangkat lunak berlisensi untuk diberikan kepada pengguna saat perangkat lunak dikirimkan melalui jaringan. SSPL diajukan untuk sertifikasi ke Open Source Initiative tetapi kemudian ditarik. Pada Januari 2021, Open Source Initiative menyatakan bahwa SSLL bukanlah lisensi open source. Driver bahasa tersedia di bawah Lisensi Apache. Selain itu, MongoDB Inc. menawarkan lisensi kepemilikan untuk MongoDB. Versi terakhir yang dilisensikan sebagai AGPL versi 3 adalah 4. 0. 3 (stabil) dan 4. 1. 4

MongoDB telah dihapus dari distribusi Debian, Fedora dan Red Hat Enterprise Linux karena perubahan lisensi. Fedora menetapkan bahwa SSPL versi 1 bukanlah lisensi perangkat lunak bebas karena "sengaja dibuat untuk menjadi diskriminatif secara agresif" terhadap pengguna komersial

Laporan bug dan kritik[sunting | sunting sumber]

Keamanan[sunting | sunting sumber]

Karena konfigurasi keamanan default MongoDB, memungkinkan siapa saja untuk memiliki akses penuh ke database, data dari puluhan ribu instalasi MongoDB telah dicuri. Selain itu, banyak server MongoDB telah ditahan untuk mendapatkan uang tebusan

Pada September 2017; .

Dari MongoDB 2. 6 rilis dan seterusnya, binari dari paket RPM dan DEB MongoDB resmi mengikat ke localhost secara default. Dari MongoDB 3. 6, perilaku default ini diperluas ke semua paket MongoDB di semua platform. Akibatnya, semua koneksi jaringan ke database akan ditolak kecuali dikonfigurasi secara eksplisit oleh administrator

Kritik teknis[sunting | sunting sumber]

Dalam beberapa skenario kegagalan di mana aplikasi dapat mengakses dua proses MongoDB yang berbeda, tetapi proses ini tidak dapat mengakses satu sama lain, MongoDB mungkin mengembalikan bacaan basi. Dalam skenario ini, MongoDB juga dapat memutar kembali penulisan yang telah diakui. Masalah ini telah diatasi sejak versi 3. 4. 0 dirilis pada November 2016 (dan di-porting kembali ke v3. 2. 12)

Sebelum versi 2. 2, kunci diimplementasikan berdasarkan proses per-server. Dengan versi 2. 2, kunci diimplementasikan pada tingkat basis data. Sejak versi 3. 0, mesin penyimpanan pluggable diperkenalkan, dan setiap mesin penyimpanan dapat mengimplementasikan kunci secara berbeda. Dengan MongoDB 3. 0 kunci diimplementasikan pada tingkat pengumpulan untuk mesin penyimpanan MMAPv1, sedangkan mesin penyimpanan WiredTiger menggunakan protokol konkurensi optimis yang menyediakan penguncian tingkat dokumen secara efektif. Bahkan dengan versi sebelum 3. 0, salah satu pendekatan untuk meningkatkan konkurensi adalah dengan menggunakan sharding. Dalam beberapa situasi, baca dan tulis akan menghasilkan kuncinya. Jika MongoDB memprediksi halaman tidak mungkin ada di memori, operasi akan menghasilkan kuncinya saat halaman dimuat. Penggunaan hasil kunci berkembang pesat di 2. 2

Hingga versi 3. 3. 11, MongoDB tidak dapat melakukan penyortiran berbasis pemeriksaan dan terbatas pada perbandingan berdasarkan byte melalui memcmp yang tidak akan memberikan pengurutan yang benar untuk banyak bahasa non-Inggris saat digunakan dengan pengkodean Unicode. Masalah ini diperbaiki pada 23 Agustus 2016

Sebelum MongoDB 4. 0, kueri terhadap indeks bukanlah atom. Dokumen yang sedang diperbarui saat kueri sedang berjalan dapat terlewatkan. Pengenalan perhatian baca snapshot di MongoDB 4. 0 menghilangkan fenomena ini

Meskipun MongoDB mengklaim dalam artikel tak bertanggal berjudul "MongoDB dan Jepsen" bahwa basis data mereka lulus uji perusahaan Riset Keamanan Sistem Terdistribusi Jepsen, yang disebutnya "Uji keamanan, kebenaran, dan konsistensi data terberat di industri", Jepsen menerbitkan sebuah artikel pada Mei 2020 yang menyatakan . 6. 4 sebenarnya telah gagal dalam pengujian mereka, dan bahwa MongoDB 4 yang lebih baru. 2. 6 memiliki lebih banyak masalah termasuk "transaksi retrocausal" di mana transaksi membalikkan urutan sehingga pembacaan dapat melihat hasil penulisan di masa mendatang. Jepsen mencatat dalam laporan mereka bahwa MongoDB menghilangkan penyebutan temuan ini di halaman "MongoDB and Jepsen" MongoDB

Konferensi MongoDB[sunting | sunting sumber]

MongoDB Inc. menyelenggarakan konferensi pengembang tahunan yang disebut sebagai MongoDB World atau MongoDB. hidup

Sebutkan 3 jenis database?

sistem database hierarkis . sistem basis data jaringan. sistem basis data berorientasi objek.

Apa yang disebut database NoSQL?

Database NoSQL (alias " tidak hanya SQL ") adalah database non-tabular dan menyimpan data secara berbeda dari tabel relasional. Database NoSQL tersedia dalam berbagai jenis berdasarkan model datanya. Jenis utamanya adalah dokumen, nilai kunci, kolom lebar, dan grafik.

Bagaimana cara mendefinisikan db di MongoDB?

Di MongoDB Compass, Anda membuat database dan menambahkan koleksi pertamanya secara bersamaan. .
Klik "Buat Database" untuk membuka dialog
Masukkan nama database dan koleksi pertamanya
Klik "Buat Basis Data"

Sebutkan 4 jenis database?

Tipe Sistem Manajemen Basis Data .
Basis data relasional
Basis data berorientasi objek
Basis data hierarkis
Basis data jaringan