Очистка данных времени выполнения
Общие сведения
Количество данных, генерируемых и хранящихся в производственной системе, легко недооценить. Поскольку PTC не дает официальной рекомендации по объему хранящихся данных, так как это в значительной степени зависит от конкретного случая, рекомендуется для любой производственной системы использовать план очистки старых данных из соображений производительности. При планировании очистки данных необходимо ответить на следующие вопросы.
Какое количества свойств записывается в журнал?
Для какого количества вещей записываются в журнал свойства?
Как часто эти свойства записываются в журнал?
Нужно ли архивировать данные записей? См. раздел Данные времени выполнения.
В общем случае, если данные записываются в журнал каждые несколько минут для нескольких свойств на нескольких сотнях удаленных граничных устройств, данные могут храниться в течение нескольких месяцев. Если данные записываются в журнал несколько раз в минуту для 100 свойств в тысяче различных вещей, может потребоваться очистка старых данных даже за несколько недель. Рекомендуется запрашивать и очищать данные небольшими блоками на постоянной основе. Производительность может помочь повысить более частая очистка по расписанию (ежедневная, а не еженедельная).
PTC рекомендует, если требуется хранение данных более одного года, использовать для хранилища внешнюю базу данных.
Способы очистки данных
В то время как очистка данных JavaScript будет различаться в зависимости от сценария, следующие общие шаги будут одинаковыми.
1. Создайте новую вещь и задайте для ее параметра Базовый шаблон вещи значение Планировщик.
2. Откройте раздел Конфигурация и задайте значения для свойств runAsUser и schedule.
Дополнительные сведения о правильном форматировании свойства schedule см. в статье https://docs.oracle.com/cd/E12058_01/doc/doc.1014/e12030/cron_expressions.htm.
В зависимости от очистки предполагается использование JVM для повышения производительности во время выполнения задания. Поэтому наилучшим способом будет разбивать крупные задания на более мелкие во время непиковых часов.
3. Выберите Подписки и нажмите кнопку Добавить.
4. В разделе Информация о подписке выберите Я и установите флажок Включено.
5. Щелкните Входные данные.
6. В поле Событие выберите ScheduledEvent.
7. Добавьте конкретные сведения в сценарий JavaScript для задания очистки.
* 
Для сервисов потоков значений и потоков, если дата начала не указана, будут очищены все значения от начала эпохи. Если не указана дата окончания, будут очищены все свойства до момента выполнения сервиса.
Оптимальные методы работы с планировщиком
Не подписывайтесь на событие таймера или планировщика на уровне шаблона вещи. Вместо этого подпишитесь на вещь.
Не запрашивайте большие объемы данных при работе с часто срабатывающими таймерами. Дополнительные сведения см. на сайте PTC Community (Сообщество PTC).
По возможности не запрашивайте и не обновляйте один источник данных в подписке. Вместо этого запрашивайте поток таблицы данных один раз для каждой подписки и один раз в конце задания планировщика, если это необходимо (используя инструкции пакетного обновления).
Очистка потоков значений, потоков, репозиториев файлов
Было ли это полезно?