Azure Cosmos DB Python SDK: Как читать изменения подачи? - PullRequest
0 голосов
/ 10 февраля 2019

Этот вопрос может быть тривиальным, но я не могу понять, как читать ленту изменений, используя PyDocument DB, и документация не очень полезна.

До сих пор я использовал собственный коннектор 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)

Я пытался найти некоторые образцы, но безуспешно.

Заранее спасибо!

1 Ответ

0 голосов
/ 11 февраля 2019

Пожалуйста, ознакомьтесь с нашими официальными образцами здесь, чтобы прочитать ленту изменений. Вы можете использовать метод 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.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...