Высокая стоимость Azure Функция хранения веб-заданий для контрольных точек Event Hub - PullRequest
1 голос
/ 20 марта 2020

Мы хотим использовать функцию Azure (AF) для извлечения данных (15k msg / min & 35 Mb / min) из концентратора событий (EH) и сохранения их в Azure Synapse (ранее Data Warehouse). Для ввода EH AF использует учетную запись хранения для хранения самых последних контрольных точек каждого раздела EH (32 раздела). По какой-то причине стоимость этого хранилища намного превышает стоимость самого AF.

Анализ стоимости по счетчику за один день показывает, что это высокий счет чтения , написать и другие операции, которые вызывают эти высокие расходы. Также вы можете видеть, что затраты на хранение примерно в 40 раз выше, чем сама функция.

Интересно то, что мы уже успешно используем подобную настройку с EH, вводимым для AF, где затраты на хранение примерно равны то же самое, что и сам AF, несмотря на то, что EH осуществляет потоковую передачу тех же данных (сообщений и тома), а также настроен на 32 раздела.

Этот вопрос о переполнении стека , похоже, решает ту же проблему , но не было никакого реального решения, кроме:

«Я считаю, что создание новой функции и развертывание кода для которой устранили проблему.»

Что мы отсутствует? Thx

1 Ответ

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

У нас была та же проблема.

  • Используйте учетные записи общего назначения V1 вместо V2 или хранилища BLOB-объектов. Для одного клиента мы сократили стоимость учетной записи хранения примерно с 3000 € в месяц до 100 €, просто используя V1.
  • Делайте меньше контрольных точек. Не проверяйте после каждого сообщения. Вы можете контролировать это, увеличив значение batchCheckpointFrequency для триггеров EventHub. Единственным недостатком является то, что вы можете повторно обработать пару сообщений в случае неожиданного сбоя функции.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...