我设置了一个 Cosmos DB (Cassandra API) 实例,我想通过 Python 应用程序管理它的吞吐量。我可以使用 Azure 中列出的 cassandra 端点和主密码创建 azure.cosmos.cosmos_client 且没有错误,但所有尝试与客户端的交互都会导致“azure.cosmos.errors.HTTPFailure:状态代码:404”。
我已经通过 Python 中的 cassandra-driver 成功地与该数据库交互,但我想访问 cosmos-client 以通过代码管理吞吐量配置。我想自动调整吞吐量,因为数据库使用在高利用率和几乎没有活动之间波动。
创建 cosmos_client 需要一个有效的 URI,其中包含架构(https/http/ftp 等...)。azure 上列出的端点已成功用于通过 cqlsh 以及 Python cassandra-driver 进行连接,但未指定架构。我在提供的端点的开头添加了“https://”,并且能够在 Python 中创建客户端(“http://”会导致错误,并且验证了不正确的地址也会导致错误,即使使用“https://” ”)。现在我已经创建了一个客户端对象,我尝试与它进行的任何交互都会给我 404 错误。
client = cosmos_client.CosmosClient(f'https://{COSMOS_CASSANDRA_ENDPOINT}', {'masterKey': COSMOS_CASSANDRA_PASSWORD} )
client.ReadEndpoint
#'https://COSMOS_CASSANDRA_ENDPOINT'
client.GetDatabaseAccount(COSMOS_CASSANDRA_ENDPOINT)
#azure.cosmos.errors.HTTPFailure: Status code: 404
client.ReadDatabase(EXISTING_KEYSPACE_NAME)
#azure.cosmos.errors.HTTPFailure: Status code: 404
我想知道使用 cosmos_client 是否是与 Cosmos Cassandra 实例交互以修改我的 Python 应用程序的吞吐量的正确方法。如果是这样,我应该如何正确设置 cosmos_client?也许有一种方法可以直接通过使用 cassandra-driver 修改数据库来做到这一点。