Mulai menggunakan Azure Cosmos DB untuk MongoDB menggunakan JavaScript
BERLAKU UNTUK: MongoDB
Artikel ini memperlihatkan kepada Anda cara menyambungkan ke Azure Cosmos DB untuk MongoDB menggunakan paket npm MongoDB asli. Setelah tersambung, Anda dapat melakukan operasi pada database, kontainer, dan item.
Catatan
Contoh cuplikan kode tersedia di GitHub sebagai proyek JavaScript.
API untuk dokumentasi | referensi MongoDB Paket MongoDB (npm)
Prasyarat
- Akun Azure dengan langganan aktif. Buat akun secara gratis.
- Node.js LTS
- Azure Command-Line Interface (CLI) atau Azure PowerShell
- Azure Cosmos DB untuk sumber daya MongoDB
Membuat aplikasi JavaScript yang baru
Buat aplikasi JavaScript yang baru di folder kosong menggunakan terminal pilihan Anda. Gunakan perintah
npm init
untuk memulai perintah untuk membuat filepackage.json
. Terima default untuk perintah.npm init
Tambahkan paket npm MongoDB ke proyek JavaScript. Gunakan perintah
npm install package
yang menentukan nama paket npm. Paketdotenv
digunakan untuk membaca variabel lingkungan dari file.env
selama pengembangan lokal.npm install mongodb dotenv
Untuk menjalankan aplikasi, gunakan terminal untuk menavigasi ke direktori aplikasi dan menjalankannya.
node index.js
Menyambungkan dengan driver asli MongoDB ke Azure Cosmos DB untuk MongoDB
Untuk menyambungkan driver asli MongoDB ke Azure Cosmos DB, buat instans kelas MongoClient
. Kelas ini adalah titik awal untuk melakukan semua operasi terhadap database.
Konstruktor yang paling umum untuk CosmosClient memiliki dua parameter:
Parameter | Contoh nilai | Deskripsi |
---|---|---|
url |
COSMOS_CONNECTION_STRING Variabel lingkungan |
API untuk mongoDB string koneksi digunakan untuk semua permintaan |
options |
{ssl: true, tls: true, } |
Opsi MongoDB untuk koneksi. |
Lihat Panduan pemecahan masalah untuk masalah koneksi.
Dapatkan nama sumber daya
Buat variabel shell untuk resourceGroupName.
# Variable for resource group name resourceGroupName="msdocs-cosmos"
Gunakan perintah
az cosmosdb list
untuk mengambil nama akun Azure Cosmos DB pertama di grup sumber daya Anda dan simpan di variabel shell accountName.# Retrieve most recently created account name accountName=$( az cosmosdb list \ --resource-group $resourceGroupName \ --query "[0].name" \ --output tsv )
Mengambil string koneksi Anda
Temukan API untuk MongoDB string koneksi dari daftar string koneksi untuk akun dengan
az cosmosdb keys list
perintah .az cosmosdb keys list --type connection-strings \ --resource-group $resourceGroupName \ --name $accountName
Rekam nilai KUNCI PRIMER. Anda akan menggunakan info masuk ini nanti.
Mengonfigurasi variabel lingkungan
Untuk menggunakan nilai STRING KONEKSI dalam kode Anda, atur nilai ini di lingkungan lokal yang menjalankan aplikasi. Untuk mengatur variabel lingkungan, gunakan terminal pilihan Anda untuk menjalankan perintah berikut:
$env:COSMOS_CONNECTION_STRING = "<cosmos-connection-string>"
Membuat MongoClient dengan string koneksi
Tambahkan dependensi untuk mereferensikan paket npm MongoDB dan DotEnv.
// Read .env file and set environment variables require('dotenv').config(); // Use official mongodb driver to connect to the server const { MongoClient } = require('mongodb');
Tentukan instans baru kelas
MongoClient
menggunakan konstruktor danprocess.env.
untuk menggunakan string koneksi.// New instance of MongoClient with connection string // for Cosmos DB const url = process.env.COSMOS_CONNECTION_STRING; const client = new MongoClient(url); // connect to the server await client.connect(); // client options const options = client.options console.log(`Options:\n${Object.keys(options).map(key => `\t${key}: ${options[key]}\n`)}`);
Untuk informasi selengkapnya tentang berbagai cara untuk membuat instans MongoClient
, lihat Mulai Cepat Driver NodeJS MongoDB.
Menutup koneksi MongoClient
Setelah aplikasi Anda selesai dengan koneksi, ingatlah untuk menutupnya. Panggilan .close()
harus setelah semua panggilan database dilakukan.
client.close()
Menggunakan kelas klien MongoDB dengan Azure Cosmos DB untuk API untuk MongoDB
Sebelum Anda mulai membangun aplikasi, mari kita lihat hierarki sumber daya di Azure Cosmos DB. Azure Cosmos DB memiliki model objek tertentu yang digunakan untuk membuat dan mengakses sumber daya. Azure Cosmos DB membuat sumber daya dalam hierarki yang terdiri dari akun, database, koleksi, dan dokumen.
Diagram hierarkis memperlihatkan akun Azure Cosmos DB DB di bagian atas. Akun ini memiliki dua node database turunan. Salah satu node database tersebut memiliki dua node koleksi turunan. Node database lainnya memiliki satu node koleksi turunan. Satu node koleksi tersebut memiliki tiga node dokumen turunan.
Setiap jenis sumber daya diwakili oleh satu atau beberapa kelas JavaScript terkait. Berikut adalah daftar kelas yang paling umum:
Kelas | Deskripsi |
---|---|
MongoClient |
Kelas ini menyediakan representasi logis sisi klien untuk lapisan API untuk MongoDB di Azure Cosmos DB. Klien ini digunakan untuk mengonfigurasi dan menjalankan permintaan terhadap layanan. |
Db |
Kelas ini adalah referensi ke database yang mungkin sudah ada, atau mungkin belum ada dalam layanan. Database divalidasi di sisi server saat Anda mencoba mengaksesnya atau melakukan operasi terhadapnya. |
Collection |
Kelas ini merupakan referensi koleksi yang mungkin juga belum ada dalam layanan. Koleksi divalidasi di sisi server saat Anda mencoba untuk menggunakannya. |
Panduan berikut menunjukkan cara menggunakan masing-masing kelas ini untuk membangun aplikasi Anda.
Panduan:
Lihat juga
Langkah berikutnya
Sekarang setelah Anda terhubung ke API untuk akun MongoDB, gunakan panduan berikutnya untuk membuat dan mengelola database.