Azure Функция Cosmos DB ограничение количества входных документов - PullRequest
0 голосов
/ 25 марта 2020

Я создаю долговременную функцию, которая периодически обрабатывает каждую запись в моей базе данных Cosmos DB (по вечерам и выходным). Прямо сейчас у меня есть только несколько сотен записей, но как только я войду в производство, я ожидаю> 50 000 документов, которые будут добавлены ~ 1 000 в неделю.

Я получаю документы через activityTrigger со следующими привязками:

{
  "bindings": [
    {
      "name": "name",
      "type": "activityTrigger",
      "direction": "in"
    },
    {
      "type": "cosmosDB",
      "direction": "in",
      "name": "articles",
      "databaseName": "Arts",
      "collectionName": "ArtData",
      "connectionStringSetting": "CosmosTrigger_ConnectionString",
      "sqlQuery": "SELECT * FROM c WHERE c.type='article'"
    }
  ],
  "scriptFile": "../dist/GetAllArticleData/index.js"
}

Существует ли ограничение на общее количество документов, возвращаемых в функцию Azure через SQL привязку запроса? Или Azure Функции автоматически обрабатывают нумерацию страниц, и нет верхнего предела?

Если нет встроенной нумерации страниц, как насчет объединения длительных функций вместе, когда первое действие получает общее количество строк, затем Функция запроса Fan Out / In вызывается с предложениями OFFSET и LIMIT, которые являются параметрами, переданными из оркестратора? Это надежная модель?

1 Ответ

0 голосов
/ 26 марта 2020

Входная привязка Cosmos DB сливает все результаты запроса и передает их в вашу функцию, продолжение не требуется.

Если запрос имеет 10 результатов или 1000, он истощит запрос и передаст их в качестве ввода .

Вот кодовое обозначение .

...