Я сохраняю 15-минутные измерения потребления электроэнергии в среде предварительного просмотра TSI. Можно ли агрегировать общее потребление энергии в день несколькими счетчиками с помощью API запросов TSI?
Я настроил иерархию как Area-Building, а идентификатор временного ряда — это «MeterId» счетчика. API запроса (https://docs.microsoft.com/en-us/rest/api/time-series-insights/preview-query#aggregate-series-api) позволил мне агрегировать потребление в день для одного счетчика. Затем я ожидал найти API для агрегирования потребления электроэнергии в здании и районе, но смог найти агрегированную операцию только с одним «timeSeriesId» или «timeSeriesName» в качестве требуемого параметра. Агрегирование до уровня в иерархии невозможно? Если нет, что было бы хорошей альтернативой (внутри или за пределами TSI) для получения этих агрегированных значений?
Спасибо за предложение, но не уверен, как использовать его с TSI. Как я могу получить значения обоих счетчиков в BuildingA, объединенные TSI? В примере в вашей ссылке используются операторы «ge» (больше или равно) и «lt» (меньше) API-интерфейса хранилища таблиц, но я не смог найти ничего подобного для TimeSeriesID в TSI API.
Что вы можете сделать, так это получить все экземпляры, которые вам нужны, с помощью API поиска (документы). (помните, что документация неверна для
URL, он должен содержать «поиск» вместо «предложить», например:
)
Затем прокрутите экземпляры, которые вы получаете в ответе, чтобы вызывать агрегаты по идентификатору один за другим. И, наконец, суммируйте результаты самостоятельно, чтобы получить ежедневный результат для всех датчиков телеметрии, отвечающих на ваш поиск.
Примечание. Одновременно можно совершать только 9 агрегированных вызовов (ограничения).
Я надеюсь, что они скоро исправят агрегаты. А пока я надеюсь, что это поможет вам.
Удачи,
Не то, на что я надеялся, но работающее решение для меня. Спасибо.
Рассматривали ли вы возможность использования Составной ключевой шаблон? Используйте для TimeSeriesID что-то вроде: "meter1BuildingA", "meter2BuildingA", "meter3BuildingB"