Начало работы с Azure Cosmos DB для MongoDB с помощью JavaScript
Статья
Область применения:
MongoDB
В этой статье показано, как подключиться к Azure Cosmos DB для MongoDB с помощью собственного пакета npm MongoDB. После подключения можно выполнять операции с базами данных, коллекциями и документами.
Создайте приложение JavaScript в пустой папке с помощью предпочтительного терминала. Используйте команду npm init, чтобы приступить к созданию файла package.json. Примите значения по умолчанию для подсказок.
Консоль
npm init
Добавьте пакет npm для MongoDB в проект JavaScript. Используйте команду npm install package, указывающую имя пакета npm. Пакет dotenv используется для считывания переменных среды из файла .env во время локальной разработки.
Консоль
npm install mongodb dotenv
Чтобы запустить приложение, перейдите в каталог приложения и запустите его с помощью терминала.
Консоль
node index.js
Подключение с помощью собственного драйвера MongoDB к Azure Cosmos DB для MongoDB
Чтобы подключиться с помощью собственного драйвера MongoDB к Azure Cosmos DB, создайте экземпляр класса MongoClient. Этот класс является начальной точкой для выполнения всех операций с базами данных.
У наиболее распространенного конструктора для MongoClient два параметра:
Параметр
Пример значения
Description
url
Переменная среды COSMOS_CONNECTION_STRING.
API для MongoDB строка подключения использовать для всех запросов
Создайте переменную оболочки для resourceGroupName.
Azure CLI
# Variable for resource group name
resourceGroupName="msdocs-cosmos"
Используйте команду az cosmosdb list, чтобы получить имя первой учетной записи Azure Cosmos DB в группе ресурсов и сохранить его в переменной оболочки accountName.
Azure CLI
# Retrieve most recently created account nameaccountName=$(
az cosmosdb list \
--resource-group$resourceGroupName \
--query"[0].name" \
--output tsv
)
Создайте переменную оболочки для 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
Пропустите этот шаг и используйте сведения для портала на следующем шаге.
Перейдите на существующую страницу учетной записи Azure Cosmos DB для MongoDB.
На странице учетной записи Azure Cosmos DB для MongoDB выберите пункт меню навигации по строке подключения.
Запишите значение для поля ОСНОВНАЯ СТРОКА ПОДКЛЮЧЕНИЯ. Вы будете использовать это значение на более позднем шаге.
Настройка переменных среды
Чтобы использовать значения CONNECTION STRING в коде, задайте это значение в локальной среде, в которой запущено приложение. Чтобы задать переменную среды, используйте предпочтительный терминал для выполнения следующих команд:
Файл .env — это стандартный способ для хранения переменных среды в проекте. Создайте файл .env в корне проекта. Добавьте следующие строки в файл .env :
Добавьте зависимости для ссылки на пакеты npm для MongoDB и dotenv.
JavaScript
// Read .env file and set environment variablesrequire('dotenv').config();
// Use official mongodb driver to connect to the serverconst { MongoClient } = require('mongodb');
Определите новый экземпляр класса MongoClient с помощью конструктора и process.env., чтобы использовать строку подключения.
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`)}`);
Дополнительные сведения о различных способах создания экземпляра MongoClient см. в на странице по драйверу NodeJS для MongoDB.
Закрытие подключения MongoClient
Когда приложение завершится с подключением, не забудьте закрыть его. Вызов .close() должен выполняться после выполнения всех вызовов базы данных.
JavaScript
client.close()
Использование клиентских классов MongoDB с Azure Cosmos DB для API для MongoDB
Прежде чем приступить к созданию приложения, рассмотрим иерархию ресурсов в Azure Cosmos DB. У Azure Cosmos DB есть объектная модель, используемая для создания ресурсов и доступа к ним. Azure Cosmos DB создает ресурсы в иерархии, состоящей из учетных записей, баз данных, коллекций и документов.
Иерархическая схема с учетной записью Azure Cosmos DB для MongoDB в верхней части. У учетной записи есть два дочерних узла базы данных. Один из узлов базы данных содержит два дочерних узла коллекции. Другой узел базы данных содержит один дочерний узел коллекции. Этот один узел коллекции содержит три дочерних узла документа.
Каждый тип ресурса представлен одним или несколькими связанными классами JavaScript. Ниже приведен список наиболее распространенных классов.
Этот класс предоставляет логическое представление на стороне клиента для уровня API для MongoDB в Azure Cosmos DB. Этот клиентский объект позволяет настраивать и выполнять запросы к службе.
Этот класс является ссылкой на базу данных, которая может еще не существовать в службе. База данных проверяется на стороне сервера при попытке доступа к ней или выполнении операции с ней.
Этот класс является ссылкой на коллекцию, которая может еще не существовать в службе. Коллекция проверяется на стороне сервера при попытке работы с ней.
Сведения об использовании каждого из этих классов для создания приложения приведены в следующих руководствах.
Присоединитесь к серии встреч для создания масштабируемых решений искусственного интеллекта на основе реальных вариантов использования с другими разработчиками и экспертами.
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.