这个问题可能很微不足道,但我无法弄清楚如何使用 PyDocument DB 读取更改源,并且文档也不是很有帮助。
到目前为止,我一直在使用 native Cosmos DB 连接器,我可以在配置中设置这些参数:
"ReadChangeFeed" :
"ChangeFeedQueryName" :
"ChangeFeedStartFromTheBeginning" :
"ChangeFeedUseNextToken" :
"RollingChangeFeed" :
但是同样的选项不适用于 Python SDK,所以我不能做这样的事情。
query = client.QueryDocuments(collLink, querystr, options= { 'enableCrossPartitionQuery': True, "ReadChangeFeed" :True})
# Push into list `elements`
elements = list(query)
我试图找到一些样本但没有成功。
提前谢谢您!
最佳答案
请在此处查看我们的官方示例以阅读更改源,您可以使用 QueryItemsChangeFeed
方法:https://github.com/Azure/azure-cosmos-python/tree/master/samples/ChangeFeedManagement
这是一个片段:
options = {}
options["startFromBeginning"] = True
response = client.QueryItemsChangeFeed(collection_link, options)
for doc in response:
print(doc)
哪里client
是 Cosmos DB 客户端的实例,并且 collection_link
是指向您要阅读的集合的基于名称的链接,例如 dbs/<your-db>/colls/<your-collection>
.
startFromBeginning
是一个标志,将从集合历史记录的开头开始读取,可选(也包含在 Github 示例中)是使用 startTime
.
关于python - Azure Cosmos DB Python SDK : How to read change feed?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54617066/