用于 Python 的适用于 NoSQL 的 Azure Cosmos DB SDK 示例

适用范围: NoSQL

azure/azure-sdk-for-python GitHub 存储库的 main/sdk/cosmos 文件夹中包含对 Azure Cosmos DB 资源执行 CRUD 操作和其他常见操作的示例解决方案。 本文将提供:

  • 每个 Python 示例项目文件中的任务链接。
  • 指向相关的 API 参考内容的链接。

先决条件

数据库示例

database_management.py Python 示例演示如何使用 CosmosClient 方法执行以下任务。 若要在运行以下示例之前了解 Azure Cosmos DB 数据库,请参阅使用数据库、容器和项概念性文章。

任务 API 参考
创建数据库 CosmosClient.create_database
按 ID 读取数据库 CosmosClient.get_database_client
查询数据库 CosmosClient.query_databases
列出帐户的数据库 CosmosClient.list_databases
删除数据库 CosmosClient.delete_database

容器示例

container_management.py Python 示例演示如何使用 DatabaseProxy 方法执行以下任务。 若要在运行以下示例之前了解 Azure Cosmos DB 集合,请参阅使用数据库、容器和项概念性文章。

任务 API 参考
查询容器 database.query_containers
创建容器 database.create_container
列出数据库中的所有容器 database.list_containers
按 ID 获取容器 database.get_container_client
管理容器的预配吞吐量 container.replace_throughput
删除容器 database.delete_container

项示例

document_management.pychange_feed_management.py Python 示例演示如何使用 ContainerProxy 方法执行以下任务。 若要在运行以下示例之前了解 Azure Cosmos DB 项,请参阅使用数据库、容器和项概念性文章。

任务 API 参考
在容器中创建项 container.create_item
按 ID 读取项 container.read_item
读取容器中的所有项 container.read_all_items
按 ID 查询项 container.query_items
替换项 container.replace_item
更新插入项 container.upsert_item
删除项 container.delete_item
获取容器中项的更改源 container.query_items_change_feed

索引示例

index_management.py Python 示例演示如何执行以下任务。 若要在运行以下示例之前了解 Azure Cosmos DB 中的索引,请参阅索引策略索引类型索引路径概念文章。

任务 API 参考
将特定项排除在索引范围外 documents.IndexingDirective.Exclude
对已编入索引的特定项使用手动索引 documents.IndexingDirective.Include
将路径排除在索引范围外 定义要在 IndexingPolicy 属性中排除的路径
对字符串使用范围索引 使用范围索引对字符串数据类型定义索引策略。 'kind': documents.IndexKind.Range, 'dataType': documents.DataType.String
执行索引转换 database.replace_container(使用更新的索引策略)
当路径上仅存在哈希索引时使用扫描 查询项时设置 enable_scan_in_query=Trueenable_cross_partition_query=True

后续步骤

正在尝试为迁移到 Azure Cosmos DB 进行容量计划? 可以使用有关现有数据库群集的信息进行容量规划。