用途
该技能用于通过 Azure CLI 的 az cosmosdb 命令,查询和管理 Azure Cosmos DB 账户、数据库和容器,并执行数据查询与吞吐量相关操作。
主要能力
列出账户
az cosmosdb list --query '[].{Name:name,ResourceGroup:resourceGroup,Kind:kind,Location:locations[0].locationName}' -o table
列出数据库
az cosmosdb sql database list --account-name my-cosmos --resource-group my-rg --query '[].{Name:name}' -o table
列出容器
az cosmosdb sql container list --account-name my-cosmos --resource-group my-rg --database-name my-db --query '[].{Name:name,PartitionKey:resource.partitionKey.paths[0]}' -o table
查询文档
az cosmosdb sql container query --account-name my-cosmos --resource-group my-rg \
--database-name my-db --container-name my-container \
--query-text "SELECT TOP 10 * FROM c WHERE c.status = 'active'" | jq '.[] | {id, status}'
获取连接字符串
az cosmosdb keys list --name my-cosmos --resource-group my-rg --type connection-strings | jq '.connectionStrings[0].connectionString'
获取吞吐量
az cosmosdb sql container throughput show --account-name my-cosmos --resource-group my-rg \
--database-name my-db --container-name my-container | jq '{throughput: .resource.throughput, autoscaleMax: .resource.autoscaleSettings.maxThroughput}'
更新吞吐量
az cosmosdb sql container throughput update --account-name my-cosmos --resource-group my-rg \
--database-name my-db --container-name my-container --throughput 1000
使用方式
通过 Azure CLI 执行上述命令,命令中需提供账户名称(--account-name / --name)与资源组(--resource-group)等参数。结合 --query、-o table 以及 jq 可对输出进行筛选与格式化。
适用场景
适用于需要在命令行环境下查看 Cosmos DB 账户与资源结构、查询容器内文档、获取连接字符串、检查或调整吞吐量配置的场景。
限制与注意事项
- Cosmos DB 支持 SQL、MongoDB、Cassandra、Gremlin 和 Table API。
- SQL API 使用 az cosmosdb sql;其他 API 类型可将 sql 替换为对应 API 类型。
- 修改吞吐量前需确认,因其可能带来费用影响。