Cara menggunakan mongodb atlas create index

MongoDB Atlas comes with a full-text search engine that can be used to search for documents in a collection.

Atlas Search is powered by Apache Lucene.

Creating an Index

We'll use the Atlas dashboard to create an index on the "sample_mflix" database from the sample data that we loaded in the Intro to Aggregations section.

  1. From the Atlas dashboard, click on your Cluster name then the Search tab.
  2. Click on the Create Search Index button.
  3. Use the Visual Editor and click Next.
  4. Name your index, choose the Database and Collection you want to index and click Next.
    • If you name your index "default" you will not have to specify the index name in the $search pipeline stage.
    • Choose the sample_mflix database and the movies collection.
  5. Click Create Search Index and wait for the index to complete.

Running a Query

To use our search index, we will use the $search operator in our aggregation pipeline.

Example

db.movies.aggregate([ { $search: { index: "default", // optional unless you named your index something other than "default" text: { query: "star wars", path: "title" }, }, }, { $project: { title: 1, year: 1, } } ])Try it Yourself »

The first stage of this aggregation pipeline will return all documents in the movies collection that contain the word "star" or "wars" in the title field.

This sponsored post features a product relevant to our readers while meeting our editorial guidelines for being objective and educational.

Indonesian (Bahasa Indonesia) translation by AaliyaA (you can also view the original English article)

Selama bertahun-tahun, MongoDB telah menjadi NoSQL database baik untuk individu maupun perusahaan yang membangun aplikasi berskala besar. Ini open source, easily scalable, dan provides high availability. Ini juga mendukung query yang sangat kompleks dan kontrol konkurensi halus.

Namun, tugas-tugas yang diperlukan seperti menginstal database, menyetelnya untuk mempertahankan kinerja yang optimal dalam jangka waktu yang lama, dan mengamankannya cenderung membutuhkan banyak upaya yang terampil dan berdedikasi.

Untungnya, ada alternatif yang lebih mudah: MongoDB Atlas, versi cloud yang dikelola sepenuhnya, dari database.

Dengan MongoDB Atlas, Anda dapat membuat MongoDB cluster pada cloud provider utama apa pun pilihan Anda dan mulai menggunakan cluster tersebut dalam hitungan menit. Menggunakan Atlas's browser-based user interface, Anda juga dapat secara intuitif mengkonfigurasi cluster dan memantau kinerjanya.

Dalam tutorial ini, saya akan menunjukkan cara membuat MongoDB Atlas free tier cluster dan menggunakannya dalam Python application.

Prasyarat

Sebelum melanjutkan, pastikan Anda telah menginstal dan mengonfigurasi berikut di komputer Anda:

  • Python 3.4 atau lebih tinggi
  • pip 18.0 atau lebih tinggi

1. Membuat Cluster

Untuk dapat menggunakan MongoDB's cloud services, Anda memerlukan akun MongoDB Atlas. Untuk membuatnya, buka home page dan tekan tombol Get started free.

Setelah Anda melengkapi formulir pendaftaran singkat, Anda akan dialihkan ke panduan pembuatan cluster. Di bagian pertama, Anda harus memilih cloud provider dan wilayah yang Anda sukai.

Untuk meminimalkan latensi jaringan, Anda sebaiknya memilih wilayah yang paling dekat dengan komputer Anda. Untuk saat ini, bagaimanapun, karena kita membuat free tier cluster, pastikan wilayah yang Anda pilih adalah salah satu yang memiliki free tier available. Selain itu, jika Anda menggunakan Google Cloud VM atau Amazon EC2 instance sebagai development environment Anda, pilih corresponding cloud provider terlebih dahulu.

Di bagian Cluster Tier, pilih opsi M0 untuk membuat cluster tingkat gratis Anda. Ini menawarkan 512 MB storage space, versi terbaru MongoDB dengan WiredTiger sebagai storage engine, satu set replika dari tiga node, dan 10 GB bandwidth per minggu.

Terakhir, berikan nama yang mudah untuk cluster dan tekan tombol Create Cluster.

MongoDB Atlas sekarang akan memakan waktu sekitar lima menit untuk menyiapkan cluster Anda.

2. Mengkonfigurasi Cluster

Sebelum Anda mulai menggunakan cluster, Anda harus memberikan beberapa detail terkait keamanan, jadi alihkan ke Security tab.

Pertama, di bagian MongoDB Users, Anda harus membuat user baru untuk diri sendiri dengan menekan tombol Add new user. Pada dialog yang muncul, ketik nama user dan kata sandi yang Anda inginkan, pilih Read and write to any database apa saja, dan tekan tombol Add User.

Selanjutnya, di bagian IP Whitelist section, Anda harus memberikan daftar alamat IP dari mana Anda akan mengakses cluster. Untuk saat ini, memberikan alamat IP komputer Anda saat ini sudah cukup.

Tekan tombol Add IP address untuk membuat entri alamat IP baru. Pada dialog yang muncul, tekan tombol Add current IP address untuk mengisi otomatis Whitelist Entry field. Selain itu, jika Anda tidak memiliki alamat IP statis, ada baiknya untuk menandainya sebagai entri sementara dengan mencentang opsi Save as temporary whitelist. Akhirnya, tekan Confirm untuk menambahkan entri.

3. Memperoleh String Koneksi

Anda akan memerlukan string koneksi yang valid untuk terhubung ke cluster Anda dari aplikasi Anda. Untuk mendapatkannya, pergi ke tab Overview dan tekan tombol Connect.

Pada dialog yang terbuka, pilih opsi Connect Your Application dan tekan tombol I'm using driver 3.6 or later. Sekarang Anda seharusnya dapat melihat string koneksi Anda. Itu tidak akan memiliki kata sandi Anda yang sebenarnya, jadi Anda harus memasukkannya secara manual. Setelah Anda melakukannya, buat catatan string sehingga Anda dapat menggunakannya nanti.

4. Menginstal Python Driver

Agar dapat berinteraksi dengan cluster MongoDB Atlas Anda secara terprogram, Anda harus memiliki  yang diinstal di komputer Anda. Untuk bahasa pemrograman Python, PyMongo adalah driver paling populer yang tersedia saat ini. Cara yang disarankan untuk menginstalnya di komputer Anda adalah dengan menggunakan modul python3 -m pip install pymongo --user 70seperti yang ditunjukkan di bawah ini:

1python3 -m pip install pymongo --user

Anda mungkin telah memperhatikan bahwa string koneksi MongoDB Atlas Anda adalah python3 -m pip install pymongo --user 71 URI. Untuk mengaktifkan driver agar bekerja dengan catatan SRV DNS, Anda juga harus menginstal modul python3 -m pip install pymongo --user 72. Begini caranya:

1python3 -m pip install dnspython --user

5. Menghubungkan ke Cluster

Anda sekarang dapat menggunakan cluster MongoDB Anda dari aplikasi Python apa pun. Untuk mengikuti saya, buat script Python baru dan buka menggunakan editor kode apa pun.

Di dalam script, untuk dapat berinteraksi dengan cluster, Anda memerlukan instance dari kelas python3 -m pip install pymongo --user 73. Sebagai satu-satunya argumen untuk konstruktornya, lewati string koneksi Anda.

1import pymongo 23my_client = pymongo.MongoClient( 4python3 -m pip install pymongo --user 0python3 -m pip install pymongo --user 1python3 -m pip install pymongo --user 2

Konstruktor di atas segera kembali dan tidak akan menimbulkan kesalahan apa pun. Oleh karena itu, untuk memeriksa apakah Anda telah berhasil membuat sambungan, saya sarankan Anda mencoba melakukan operasi pada cluster. Panggilan ke metode python3 -m pip install pymongo --user 74, yang memberikan Anda berbagai rincian tentang instance MongoDB Anda, akan cukup.

Jika tidak ada kesalahan dalam string koneksi Anda, panggilan ke metode python3 -m pip install pymongo --user 74 akan berhasil. Namun, jika nama pengguna atau kata sandi yang Anda tentukan salah, Anda akan mengalami kesalahan python3 -m pip install pymongo --user 76. Kode berikut menunjukkan cara menangkapnya:

1python3 -m pip install pymongo --user 42python3 -m pip install pymongo --user 63python3 -m pip install pymongo --user 8410python3 -m pip install pymongo --user 1121314

Sekarang Anda dapat melanjutkan dan mencoba menjalankan scrip tAnda.

6. Memasukkan Dokumen

String koneksi default yang Anda dapatkan dari interface web MongoDB Atlas menyebutkan python3 -m pip install pymongo --user 77bernama database. Mari terus menggunakan database yang sama. Beginilah cara Anda mendapatkan referensi untuk itu:

116

Database MongoDB terdiri dari satu atau lebih koleksi, yang tidak lain adalah kumpulan BSON documents (short for binary JSON). Free tier cluster Anda di MongoDB Atlas dapat memiliki maksimal 500 koleksi.

Demi contoh realistis, mari buat koleksi baru yang diberi nama python3 -m pip install pymongo --user 78. Dengan PyMongo, Anda tidak perlu secara eksplisit memanggil metode apa pun untuk melakukannya. Anda cukup mereferensikannya seolah-olah sudah ada.

118

Perlu disebutkan bahwa kode di atas tidak segera membuat python3 -m pip install pymongo --user 79collection. Ini dibuat hanya setelah Anda menambahkan dokumen ke sana. Jadi, mari sekarang buat dan tambahkan dokumen baru yang berisi data nutrisi tentang item makanan.

Menggunakan metode python3 -m pip install pymongo --user 80 adalah cara paling sederhana untuk menambahkan dokumen ke koleksi. Untuk menentukan isi dokumen, Anda mengirimkan Python dictionary ke metode. Kode contoh berikut menunjukkan caranya:

1python3 -m pip install dnspython --user 02python3 -m pip install dnspython --user 23python3 -m pip install dnspython --user 44python3 -m pip install dnspython --user 6python3 -m pip install pymongo --user 1python3 -m pip install dnspython --user 813101112131415161718

Menambahkan dokumen satu per satu bisa menjadi tidak efisien. Dengan metode python3 -m pip install pymongo --user 81, Anda dapat menambahkan beberapa dokumen ke koleksi Anda sekaligus. Ia mengharapkan array dictionaries sebagai inputnya. Kode berikut menambahkan dua dokumen lagi ke koleksi:

1import pymongo 02import pymongo 23import pymongo 44import pymongo 6python3 -m pip install pymongo --user 1import pymongo 81320111413import pymongo 2152617282930313233343536

Bidang python3 -m pip install pymongo --user 82yang Anda lihat dalam dokumen di atas adalah bidang yang digunakan sebagai kunci utama oleh MongoDB. Dengan demikian, itu tidak dapat diubah dan harus ada di semua dokumen MongoDB. Jika Anda lupa untuk memasukkannya saat membuat dokumen Anda, PyMongo akan menambahkannya untuk Anda secara otomatis dan menetapkan nilai unik yang dihasilkan secara otomatis untuk itu.

7. Running Queries

Saat Anda menambahkan beberapa dokumen ke koleksi Anda, Anda dapat menjalankan queries dengan memanggil metode python3 -m pip install pymongo --user 83, yang mengembalikan objek python3 -m pip install pymongo --user 84yang dapat Anda ulas. Jika Anda tidak menyampaikan argumen apa pun, python3 -m pip install pymongo --user 85mengembalikan semua dokumen dalam koleksi.

Kode berikut menunjukkan kepada Anda cara mencetak nama semua item makanan yang ada dalam koleksi kita:

13823my_client = pymongo.MongoClient( 14my_client = pymongo.MongoClient( 3python3 -m pip install pymongo --user 113my_client = pymongo.MongoClient( 611my_client = pymongo.MongoClient( 813401542

Jika Anda ingin metode python3 -m pip install pymongo --user 86 mengembalikan hanya dokumen-dokumen yang sesuai dengan kriteria tertentu, Anda harus mengirimkan Python dictionary kepadanya. Misalnya, jika Anda ingin menemukan dokumen yang bidang python3 -m pip install pymongo --user 87disetel ke "pizza", Anda dapat menggunakan kode berikut:

144246318

Untuk pertanyaan yang lebih kompleks, Anda dapat menggunakan MongoDB's intuitively named query operators dalam kamus yang Anda berikan ke metode python3 -m pip install pymongo --user 86. Sebagai contoh, kode berikut menunjukkan kepada Anda bagaimana menggunakan operator python3 -m pip install pymongo --user 89 untuk menemukan dokumen dengan bidang python3 -m pip install pymongo --user 90yang diatur ke nilai yang kurang dari 280:

1442python3 -m pip install pymongo --user 023184python3 -m pip install pymongo --user 1my_client = pymongo.MongoClient( 113python3 -m pip install pymongo --user 0911python3 -m pip install pymongo --user 111315my_client = pymongo.MongoClient( 617python3 -m pip install pymongo --user 1629python3 -m pip install pymongo --user 18

Dengan menggunakan notasi titik, Anda juga dapat menggunakan bidang berlapis di querie Anda. Kode berikut menunjukkan kepada Anda bagaimana menemukan dokumen whose python3 -m pip install pymongo --user 91field, yang berada di dalam python3 -m pip install pymongo --user 92field, ditetapkan ke nilai yang lebih besar atau sama dengan 0,5:

1442python3 -m pip install pymongo --user 223184python3 -m pip install pymongo --user 1my_client = pymongo.MongoClient( 113python3 -m pip install pymongo --user 2911python3 -m pip install pymongo --user 311315my_client = pymongo.MongoClient( 617python3 -m pip install pymongo --user 3629python3 -m pip install pymongo --user 38

8. Memperbarui dan Menghapus Dokumen

Sangat mirip dengan metode python3 -m pip install pymongo --user 93 dan python3 -m pip install pymongo --user 94 adalah metode python3 -m pip install pymongo --user 95 dan python3 -m pip install pymongo --user 96, yang dapat Anda gunakan untuk mengubah isi dokumen yang sudah ada di dalam koleksi Anda. Baik metode pembaruan, selain data baru, membutuhkan query untuk membidik pada dokumen yang perlu diubah.

Anda dapat menggunakan berbagai operator pembaruan dalam metode pembaruan Anda. Yang paling umum digunakan adalah python3 -m pip install pymongo --user 97, yang memungkinkan Anda menambahkan bidang baru atau memperbarui nilai dari bidang yang ada. Kode berikut menunjukkan cara menambahkan dua bidang baru bernama python3 -m pip install pymongo --user 98dan python3 -m pip install pymongo --user 99ke dokumen yang 100field disetel ke "taco":

1python3 -m pip install pymongo --user 402python3 -m pip install pymongo --user 423import pymongo 24python3 -m pip install pymongo --user 46python3 -m pip install pymongo --user 1python3 -m pip install pymongo --user 4813python3 -m pip install pymongo --user 5011python3 -m pip install pymongo --user 52133415python3 -m pip install pymongo --user 2

Jika query yang Anda berikan ke metode 101 mengembalikan lebih dari satu dokumen, hanya dokumen pertama yang diperbarui. Metode 102 tidak memiliki batasan ini.

Terakhir, dengan menggunakan metode 103 dan 104, Anda dapat menghapus dokumen dalam koleksi Anda. Kedua metode membutuhkan query untuk menentukan dokumen mana yang perlu dihapus. Beginilah cara Anda dapat menghapus semua dokumen yang 105 field diatur ke nilai yang kurang dari 300:

1python3 -m pip install pymongo --user 582python3 -m pip install pymongo --user 603python3 -m pip install pymongo --user 62434python3 -m pip install pymongo --user 1181311python3 -m pip install pymongo --user 69

Kesimpulan

Jika Anda seorang pengembang aplikasi web atau seluler yang ingin menggunakan MongoDB untuk menyimpan data, layanan MongoDB Atlas adalah untuk Anda. Ini memungkinkan Anda fokus mengembangkan aplikasi Anda daripada mengkhawatirkan detail seperti keamanan, kinerja, dan kepatuhan terhadap praktik terbaik. Dalam tutorial ini, Anda belajar cara membuat MongoDB cluster menggunakan layanan, menyambung ke sana, dan melakukan operasi baca dan tulis dasar di atasnya.

Postingan terbaru

LIHAT SEMUA