Unlimited WordPress themes, graphics, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. MongoDB
Code

Buat Cluster Database di Cloud Dengan MongoDB Atlas

Difficulty:BeginnerLength:MediumLanguages:
Sponsored Content

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.

Home page of MongoDB Atlas

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.

Cloud provider and region selection

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.

Cluster tier selection

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

Cluster name form

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.

Add new user form

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.

Add whitelist entry form

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.

Connecting your application dialog

4. Menginstal Python Driver

Agar dapat berinteraksi dengan cluster MongoDB Atlas Anda secara terprogram, Anda harus memiliki MongoDB driver 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 pip seperti yang ditunjukkan di bawah ini:

Anda mungkin telah memperhatikan bahwa string koneksi MongoDB Atlas Anda adalah mongodb + srv: // URI. Untuk mengaktifkan driver agar bekerja dengan catatan SRV DNS, Anda juga harus menginstal modul dnspython. Begini caranya:

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 MongoClient. Sebagai satu-satunya argumen untuk konstruktornya, lewati string koneksi Anda.

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 server_info (), yang memberikan Anda berbagai rincian tentang instance MongoDB Anda, akan cukup.

Jika tidak ada kesalahan dalam string koneksi Anda, panggilan ke metode server_info () akan berhasil. Namun, jika nama pengguna atau kata sandi yang Anda tentukan salah, Anda akan mengalami kesalahan OperationFailure. Kode berikut menunjukkan cara menangkapnya:

Sekarang Anda dapat melanjutkan dan mencoba menjalankan scrip tAnda.

Python script output

6. Memasukkan Dokumen

String koneksi default yang Anda dapatkan dari interface web MongoDB Atlas menyebutkan test bernama database. Mari terus menggunakan database yang sama. Beginilah cara Anda mendapatkan referensi untuk itu:

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 foods. Dengan PyMongo, Anda tidak perlu secara eksplisit memanggil metode apa pun untuk melakukannya. Anda cukup mereferensikannya seolah-olah sudah ada.

Perlu disebutkan bahwa kode di atas tidak segera membuat foods collection. 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 insert_one () adalah cara paling sederhana untuk menambahkan dokumen ke koleksi. Untuk menentukan isi dokumen, Anda mengirimkan Python dictionary ke metode. Kode contoh berikut menunjukkan caranya:

Menambahkan dokumen satu per satu bisa menjadi tidak efisien. Dengan metode insert_many (), Anda dapat menambahkan beberapa dokumen ke koleksi Anda sekaligus. Ia mengharapkan array dictionaries sebagai inputnya. Kode berikut menambahkan dua dokumen lagi ke koleksi:

Bidang _id yang 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 find (), yang mengembalikan objek Cursor yang dapat Anda ulas. Jika Anda tidak menyampaikan argumen apa pun, find mengembalikan semua dokumen dalam koleksi.

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

Jika Anda ingin metode find () mengembalikan hanya dokumen-dokumen yang sesuai dengan kriteria tertentu, Anda harus mengirimkan Python dictionary kepadanya. Misalnya, jika Anda ingin menemukan dokumen yang bidang name disetel ke "pizza", Anda dapat menggunakan kode berikut:

Untuk pertanyaan yang lebih kompleks, Anda dapat menggunakan MongoDB's intuitively named query operators dalam kamus yang Anda berikan ke metode find (). Sebagai contoh, kode berikut menunjukkan kepada Anda bagaimana menggunakan operator $ lt untuk menemukan dokumen dengan bidang calories yang diatur ke nilai yang kurang dari 280:

Dengan menggunakan notasi titik, Anda juga dapat menggunakan bidang berlapis di querie Anda. Kode berikut menunjukkan kepada Anda bagaimana menemukan dokumen whose trans field, yang berada di dalam fats field, ditetapkan ke nilai yang lebih besar atau sama dengan 0,5:

8. Memperbarui dan Menghapus Dokumen

Sangat mirip dengan metode insert_one () dan insert_many () adalah metode update_one () dan update_many (), 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 $ set, yang memungkinkan Anda menambahkan bidang baru atau memperbarui nilai dari bidang yang ada. Kode berikut menunjukkan cara menambahkan dua bidang baru bernama fiber dan sugar ke dokumen yang name field disetel ke "taco":

Jika query yang Anda berikan ke metode update_one () mengembalikan lebih dari satu dokumen, hanya dokumen pertama yang diperbarui. Metode update_many () tidak memiliki batasan ini.

Terakhir, dengan menggunakan metode delete_one () dan delete_many (), 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 calories field diatur ke nilai yang kurang dari 300:

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.

Untuk mempelajari lebih lanjut tentang MongoDB Atlas, Anda dapat merujuk ke official documentation..

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.