Rozpoczynanie pracy z usługą Azure Cosmos DB dla bazy danych MongoDB przy użyciu języka JavaScript
Artykuł
DOTYCZY:
MongoDB
W tym artykule pokazano, jak nawiązać połączenie z usługą Azure Cosmos DB dla bazy danych MongoDB przy użyciu natywnego pakietu npm bazy danych MongoDB. Po nawiązaniu połączenia można wykonywać operacje na bazach danych, kolekcjach i dokumentach.
Uwaga
Przykładowe fragmenty kodu są dostępne w witrynie GitHub jako projekt JavaScript.
Utwórz nową aplikację JavaScript w pustym folderze przy użyciu preferowanego terminalu.
npm init Użyj polecenia , aby rozpocząć monity, aby utworzyć package.json plik. Zaakceptuj wartości domyślne dla monitów.
Console
npm init
Dodaj pakiet npm bazy danych MongoDB do projektu JavaScript.
npm install package Użyj polecenia określającego nazwę pakietu npm. Pakiet dotenv służy do odczytywania zmiennych środowiskowych z pliku podczas programowania lokalnego .env .
Console
npm install mongodb dotenv
Aby uruchomić aplikację, użyj terminalu, aby przejść do katalogu aplikacji i uruchomić aplikację.
Console
node index.js
Nawiązywanie połączenia za pomocą sterownika natywnego bazy danych MongoDB z usługą Azure Cosmos DB dla bazy danych MongoDB
Aby nawiązać połączenie z natywnym sterownikiem bazy danych MongoDB z usługą Azure Cosmos DB, utwórz wystąpienie MongoClient klasy. Ta klasa jest punktem wyjścia do wykonywania wszystkich operacji względem baz danych.
Najbardziej typowy konstruktor dla bazy danych MongoClient ma dwa parametry:
Parametr
Przykładowa wartość
opis
url
COSMOS_CONNECTION_STRING zmienna środowiskowa
Interfejs API dla bazy danych MongoDB parametry połączenia do użycia dla wszystkich żądań
Utwórz zmienną powłoki dla właściwości resourceGroupName.
Azure CLI
# Variable for resource group name
resourceGroupName="msdocs-cosmos"
az cosmosdb list Użyj polecenia , aby pobrać nazwę pierwszego konta usługi Azure Cosmos DB w grupie zasobów i zapisać je w zmiennej powłoki accountName.
Azure CLI
# Retrieve most recently created account nameaccountName=$(
az cosmosdb list \
--resource-group$resourceGroupName \
--query"[0].name" \
--output tsv
)
Utwórz zmienną powłoki dla RESOURCE_GROUP_NAME.
Azure PowerShell
# Variable for resource group name$RESOURCE_GROUP_NAME = "msdocs-cosmos"
# Get the name of the first Azure Cosmos DB account in your resource group$ACCOUNT_NAME = (Get-AzCosmosDBAccount -ResourceGroupName$RESOURCE_GROUP_NAME)[0].Name
Pomiń ten krok i użyj informacji dotyczących portalu w następnym kroku.
Przejdź do istniejącej strony konta usługi Azure Cosmos DB dla bazy danych MongoDB.
Na stronie konta usługi Azure Cosmos DB dla bazy danych MongoDB wybierz opcję menu nawigacji Parametry połączenia.
Zapisz wartość pola PODSTAWOWE PARAMETRY POŁĄCZENIA. Ta wartość jest używana w późniejszym kroku.
Skonfiguruj zmienne środowiskowe
Aby użyć wartości PARAMETRY POŁĄCZENIA w kodzie, ustaw tę wartość w środowisku lokalnym, w którym uruchomiono aplikację. Aby ustawić zmienną środowiskową, użyj preferowanego terminalu, aby uruchomić następujące polecenia:
.env Plik to standardowy sposób przechowywania zmiennych środowiskowych w projekcie.
.env Utwórz plik w katalogu głównym projektu. Dodaj następujące wiersze do .env pliku:
Tworzenie elementu MongoClient przy użyciu parametry połączenia
Dodaj zależności, aby odwoływać się do pakietów npm mongoDB i DotEnv.
JavaScript
// Read .env file and set environment variablesrequire('dotenv').config();
// Use official mongodb driver to connect to the serverconst { MongoClient } = require('mongodb');
Zdefiniuj nowe wystąpienie MongoClient klasy przy użyciu konstruktora i process.env. użyj parametry połączenia.
JavaScript
// New instance of MongoClient with connection string// for Cosmos DBconst url = process.env.COSMOS_CONNECTION_STRING;
const client = new MongoClient(url);
// connect to the serverawait client.connect();
// client optionsconst options = client.options
console.log(`Options:\n${Object.keys(options).map(key => `\t${key}: ${options[key]}\n`)}`);
Aby uzyskać więcej informacji na temat różnych sposobów tworzenia MongoClient wystąpienia, zobacz Przewodnik Szybki start sterownika NodeJS bazy danych MongoDB.
Zamykanie połączenia z klientem MongoClient
Po zakończeniu pracy aplikacji z połączeniem pamiętaj, aby ją zamknąć. Wywołanie powinno być wykonywane po wykonaniu .close() wszystkich wywołań bazy danych.
JavaScript
client.close()
Używanie klas klientów bazy danych MongoDB z usługą Azure Cosmos DB dla interfejsu API dla bazy danych MongoDB
Przed rozpoczęciem tworzenia aplikacji przyjrzyjmy się hierarchii zasobów w usłudze Azure Cosmos DB. Usługa Azure Cosmos DB ma określony model obiektów używany do tworzenia zasobów i uzyskiwania do ich dostępu. Usługa Azure Cosmos DB tworzy zasoby w hierarchii składającej się z kont, baz danych, kolekcji i dokumentów.
Diagram hierarchiczny przedstawiający konto usługi Azure Cosmos DB dla bazy danych MongoDB u góry. Konto ma dwa podrzędne węzły bazy danych. Jeden z węzłów bazy danych zawiera dwa podrzędne węzły kolekcji. Drugi węzeł bazy danych zawiera jeden podrzędny węzeł kolekcji. Ten węzeł pojedynczej kolekcji ma trzy podrzędne węzły dokumentu.
Każdy typ zasobu jest reprezentowany przez co najmniej jedną skojarzną klasę języka JavaScript. Oto lista najpopularniejszych klas:
Ta klasa zapewnia logiczną reprezentację po stronie klienta dla warstwy interfejsu API dla bazy danych MongoDB w usłudze Azure Cosmos DB. Obiekt klienta służy do konfigurowania i wykonywania żądań względem usługi.
Ta klasa jest odwołaniem do bazy danych, która może lub nie istnieje jeszcze w usłudze. Baza danych jest weryfikowana po stronie serwera podczas próby uzyskania do niej dostępu lub wykonania operacji względem niej.
Ta klasa jest odwołaniem do kolekcji, która również może jeszcze nie istnieć w usłudze. Kolekcja jest weryfikowana po stronie serwera podczas próby jej pracy.
W poniższych przewodnikach pokazano, jak utworzyć aplikację przy użyciu każdej z tych klas.
Dołącz do serii meetup, aby tworzyć skalowalne rozwiązania sztucznej inteligencji oparte na rzeczywistych przypadkach użycia z innymi deweloperami i ekspertami.
Implemente una aplicación web de .NET que use la biblioteca cliente para Node.js para interactuar con los datos de Azure Cosmos DB para MongoDB (RU) en este inicio rápido.
Azure Cosmos DB for MongoDB facilita el uso de Azure Cosmos DB como si fuera una base de datos de MongoDB. Para aplicar su experiencia en MongoDB y seguir usando sus controladores, SDK y herramientas favoritos de MongoDB, apunte la aplicación a la cadena de conexión de la cuenta de la API para MongoDB.
Implemente una aplicación web de .NET que use la biblioteca cliente para .NET para interactuar con los datos de Azure Cosmos DB para MongoDB (RU) en este inicio rápido.