Inicio rápido: Uso de Azure Cosmos DB para MongoDB (RU) con Node.js
Artículo
Se aplica a:
✅ MongoDB (RU)
En este inicio rápido, implementará una aplicación básica de Azure Cosmos DB para MongoDB mediante Python. Azure Cosmos DB para MongoDB es un almacén de datos sin esquema que permite a las aplicaciones almacenar documentos no estructurados en la nube con bibliotecas de MongoDB. Aprenderá a crear documentos y a realizar tareas básicas en el recurso de Azure Cosmos DB mediante Python.
Antes de comenzar, si no tiene una cuenta de Azure, cree una gratuita.
Inicialización del proyecto
Use Azure Developer CLI (azd) para crear una cuenta de Azure Cosmos DB for Table e implementar una aplicación de ejemplo contenedorizada. La aplicación de ejemplo usa la biblioteca cliente para administrar, crear, leer y consultar datos de ejemplo.
Abra un terminal en un directorio vacío.
Si aún no está autenticado, autentíquese en Azure Developer CLI mediante azd auth login. Siga los pasos especificados por la herramienta para autenticarse en la CLI mediante sus credenciales de Azure preferidas.
Durante la inicialización, configure un nombre de entorno único.
Implemente la cuenta de Azure Cosmos DB mediante azd up. Las plantillas de Bicep también implementan una aplicación web de muestra.
Azure CLI
azd up
Durante el proceso de aprovisionamiento, seleccione la suscripción, la ubicación deseada y el grupo de recursos de destino. Espere a que se complete el proceso de aprovisionamiento. El proceso puede tardar aproximadamente cinco minutos.
Una vez realizado el aprovisionamiento de los recursos de Azure, se incluye una dirección URL a la aplicación web en ejecución en la salida.
Output
Deploying services (azd deploy)
(✓) Done: Deploying service web
- Endpoint: <https://[container-app-sub-domain].azurecontainerapps.io>
SUCCESS: Your application was provisioned and deployed to Azure in 5 minutes 0 seconds.
Use la dirección URL de la consola para ir a la aplicación web en el explorador. Observe la salida de la aplicación en ejecución.
Instalación de la biblioteca cliente
La biblioteca cliente está disponible a través de npm, como paquete de mongodb.
Abra un terminal y vaya a la carpeta /src/ts.
Bash
cd ./src/ts
Si aún no está instalado, instale el paquete mongodb mediante npm install.
Bash
npm install --save mongodb
Abra y revise el archivo src/ts/package.json para validar que existe la entrada mongodb.
Abra un terminal y vaya a la carpeta /src/js.
Bash
cd ./src/js
Si aún no está instalado, instale el paquete mongodb mediante npm install.
Bash
npm install --save mongodb
Abra y revise el archivo src/js/package.json para validar que existe la entrada mongodb.
El código de ejemplo de la plantilla usa una base de datos denominada cosmicworks y una colección denominada products. La colección products contiene detalles como el nombre, la categoría, la cantidad y un identificador único para cada producto. La colección usa la propiedad /category como clave de partición.
Autenticar el cliente
En este ejemplo se crea una nueva instancia del tipo MongoClient.
TypeScript
const connectionString = "<azure-cosmos-db-for-mongodb-connection-string>";
const client = new MongoClient(connectionString);
JavaScript
const connectionString = "<azure-cosmos-db-for-mongodb-connection-string>";
const client = new MongoClient(connectionString);
Obtención de una base de datos
En este ejemplo se crea una instancia del tipo Db mediante la función db del tipo MongoClient.
TypeScript
const database: Db = client.db("<database-name>");
JavaScript
const database = client.db("<database-name>");
Obtener una colección
En este ejemplo se crea una instancia del tipo Collection mediante la función collection del tipo Db.
Esta función tiene un parámetro genérico que usa el tipo Product definido en una interfaz.
Realice una operación de lectura de punto mediante el identificador único (id) y los campos de clave de partición. Use collection.findOne para recuperar de forma eficaz el elemento específico.
TypeScript
var query: Filter<Product> = {
_id: 'aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb',
category: 'gear-surf-surfboards'
};
var response: WithId<Product> | null = await collection.findOne(query);
JavaScript
var query = {
_id: 'aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb',
category: 'gear-surf-surfboards'
};
var response = await collection.findOne(query);
Consulta de documentos
Realice una consulta en varios elementos de un contenedor mediante collection.find. Esta consulta busca todos los elementos de una categoría especificada (clave de partición).
TypeScript
var query: Filter<Product> = {
category: 'gear-surf-surfboards'
};
var response: FindCursor<WithId<Product>> = await collection.find(query);
TypeScript
forawait (const item of response) {
// Do something with each item
}
JavaScript
var query = {
category: 'gear-surf-surfboards'
};
var response = await collection.find(query);
JavaScript
forawait (const item of response) {
// Do something with each item
}
Exploración de los datos
Use la extensión de Visual Studio Code para Azure Cosmos DB para explorar los datos de MongoDB. Puede realizar operaciones básicas de base de datos, entre las que se incluyen, entre otras:
Realizar consultas mediante un libro de recortes o el editor de consultas
Modificar, actualizar, crear y eliminar documentos
Únase a la serie de reuniones para crear soluciones de inteligencia artificial escalables basadas en casos de uso reales con compañeros desarrolladores y expertos.