Ejemplos del SDK de Azure Cosmos DB for NoSQL para Python
SE APLICA A: NoSQL
En la carpeta main/sdk/cosmos
del repositorio de GitHub azure-documentdb-python, se incluyen soluciones de ejemplo que realizan operaciones CRUD y otras operaciones comunes con recursos de Azure Cosmos DB. Este artículo ofrece:
- Vínculos a las tareas de cada uno de los archivos de proyecto de ejemplo de Python.
- Vínculos al contenido de referencia de la API relacionada.
Requisitos previos
- Una cuenta de Azure Cosmos DB. Tendrá las siguientes opciones:
- Dentro de una suscripción activa de Azure:
- Cree una cuenta gratuita de Azure o use la suscripción existente
- Créditos mensuales de Visual Studio
- Nivel gratis de Azure Cosmos DB
- Sin una suscripción activa de Azure:
- Pruebe Azure Cosmos DB gratis, un entorno de pruebas que dura 30 días.
- Emulador de Azure Cosmos DB
- Dentro de una suscripción activa de Azure:
- Python 3.7 y versiones posteriores, con el archivo ejecutable
python
enPATH
. (Para más información, consulte la directiva de compatibilidad con versiones de Python de los SDK de Azure). - Visual Studio Code.
- Extensión de Python para Visual Studio Code
- Git.
- SDK de Azure Cosmos DB for NoSQL para Python
Ejemplos de base de datos
En el ejemplo database_management.py de Python, se muestra cómo realizar las siguientes tareas con los métodos CosmosClient. Para obtener información sobre las bases de datos de Azure Cosmos DB antes de ejecutar los siguientes ejemplos, consulte el artículo conceptual Uso de bases de datos, contenedores y elementos.
Tarea | Referencia de API |
---|---|
Creación de una base de datos | CosmosClient.create_database |
Lectura de una base de datos por identificador | CosmosClient.get_database_client |
Enumeración de las bases de datos | CosmosClient.query_databases |
Enumeración de las bases de datos de una cuenta | CosmosClient.list_databases |
Eliminación de una base de datos | CosmosClient.delete_database |
Ejemplos de contenedor
En el ejemplo container_management.py de Python, se muestra cómo realizar las siguientes tareas con los métodos DatabaseProxy. Para información sobre las colecciones de Azure Cosmos DB antes de ejecutar los siguientes ejemplos, consulte el artículo conceptual Uso de bases de datos, contenedores y elementos.
Tarea | Referencia de API |
---|---|
Búsqueda de un contenedor | database.query_containers |
Creación de un contenedor | database.create_container |
Lectura de todos los contenedores de una base de datos | database.list_containers |
Obtención de un contenedor por su identificador | database.get_container_client |
Administración del rendimiento aprovisionado del contenedor | container.replace_throughput |
Eliminación de un contenedor | database.delete_container |
Ejemplos de elementos
Los ejemplos document_management.py y change_feed_management.py de Python muestran cómo realizar las siguientes tareas con los métodos ContainerProxy. Para información sobre los elementos de Azure Cosmos DB antes de ejecutar los ejemplos siguientes, consulte el artículo conceptual Uso de bases de datos, contenedores y elementos.
Tarea | Referencia de API |
---|---|
Creación de los elementos de un contenedor | container.create_item |
Lectura de un elemento por su identificador | container.read_item |
Lectura de todos los elementos de un contenedor | container.read_all_items |
Consulta de un elemento por su identificador | container.query_items |
Reemplazo de un elemento | container.replace_item |
Realización de una operación upsert en un elemento | container.upsert_item |
Eliminación de un elemento | container.delete_item |
Obtención de la fuente de cambios de los elementos de un contenedor | container.query_items_change_feed |
Ejemplos de indización
En el ejemplo index_management.py de Python, se muestra cómo realizar las siguientes tareas. Para información sobre la indexación en Azure Cosmos DB antes de ejecutar los ejemplos siguientes, consulte los artículos conceptuales sobre las directivas de indexación, los tipos de indexación y las rutas de acceso de indexación.
Tarea | Referencia de API |
---|---|
Exclusión de un elemento determinado para la indexación | documents.IndexingDirective.Exclude |
Indexación manual con elementos específicos indexados | documents.IndexingDirective.Include |
Exclusión de rutas de acceso de la indexación | Definición de las rutas de acceso que se van a excluir en la propiedad IndexingPolicy |
Uso de índices de intervalo en cadenas | Defina la directiva de indexación con índices de intervalo en el tipo de datos de cadena. 'kind': documents.IndexKind.Range , 'dataType': documents.DataType.String |
Realización de una transformación de índices | database.replace_container (use la directiva de indexación actualizada) |
Uso de exámenes cuando solo existe un índice de hash en la ruta de acceso | Establecimiento de enable_scan_in_query=True y enable_cross_partition_query=True al consultar los elementos |
Pasos siguientes
¿Intenta planear la capacidad de una migración a Azure Cosmos DB? Para ello, puede usar información sobre el clúster de bases de datos existente.
- Si lo único que sabe es el número de núcleos virtuales y servidores del clúster de bases de datos existente, consulte la información sobre el cálculo de unidades de solicitud mediante núcleos virtuales o CPU virtuales.
- Si conoce las tasas de solicitudes típicas de la carga de trabajo de la base de datos actual, obtenga información sobre el cálculo de unidades de solicitud mediante la herramienta de planeamiento de capacidad de Azure Cosmos DB.