Локальная очередь телеметрии: рассчитать место и предел автономного хранения
Схему можно прокрутить по горизонтали или открыть отдельно.
Обещание «шлюз хранит данные при обрыве» требует числового и эксплуатационного уточнения. Объём накопления зависит от числа источников, фактического размера записи и длительности отсутствия выгрузки. Не менее важно заранее решить, что происходит при заполнении и как оператор узнаёт о затронутом периоде.
Посчитать поступление
Для каждого потока запишите частоту, средний и предельный размер записи. Учитывайте метаданные, служебные поля и структуру хранения. Размер полезных измерений в сетевом пакете не равен занятому месту в локальной базе или файловой очереди.
В простом учебном расчёте объём поступления равен сумме произведений числа записей на их фактический размер. Для объекта используйте измеренные значения и предусмотренный запас. Отдельно учитывайте события всплеска: аварийная диагностика способна создать больше данных, чем обычный периодический поток.
Выделить доступный объём
Разделите место системы, журналов, обновлений и собственно очереди. Номинальная ёмкость накопителя не должна целиком считаться свободным буфером телеметрии. Укажите ограничения реализации и наблюдаемый показатель остатка.
При использовании MQTT отделяйте локальную очередь приложения от состояния протокольного сеанса. Спецификация описывает собственные механизмы обмена и хранения состояния, но не назначает ёмкость диска вашего шлюза. (OASIS — MQTT Version 5.0, OASIS Standard) Потеря локальных записей не исправляется самим наличием выбранного QoS.
Задать политику заполнения
Возможные действия выбирает проект: прекращение приёма, вытеснение разрешённых данных или иной поддерживаемый режим. Требования к сохранению событий и периодических измерений могут отличаться. Не придумывайте режим, которого устройство не поддерживает.
Для каждого действия определите явный признак: счётчик, диапазон затронутых идентификаторов и уведомление. После появления свободного места система не должна скрывать уже произошедшую потерю. Оператору нужен известный разрыв истории, а не непрерывный график, построенный из догадок. Получение уведомления также проверяют отдельно от его создания.
Проверить восстановление
На стенде ограничьте доступное место и подтвердите поведение до, во время и после заполнения. Затем восстановите канал и сравните скорость поступления со скоростью подтверждённой выгрузки. Очередь уменьшается только тогда, когда полезная выгрузка превышает новое поступление.
Учитывайте перезапуск во время записи и освобождения места. Проверка целостности и восстановления относится к эксплуатационной надёжности OT. (NIST SP 800-82 Rev.3 — Guide to Operational Technology Security) Итоговый паспорт должен содержать измеренный предел при заданных условиях, политику потерь и время разгрузки. Без этих сведений фраза об автономном хранении остаётся непроверяемым обещанием.
Запросы отправляются на наш e-mail из вашей почтовой программы.