Очистка данных времени выполнения
Общие сведения
Количество данных, генерируемых и хранящихся в производственной системе, легко недооценить. Поскольку PTC не дает официальной рекомендации по объему хранящихся данных, так как это в значительной степени зависит от конкретного случая, рекомендуется для любой производственной системы использовать план очистки старых данных из соображений производительности. При планировании очистки данных необходимо ответить на следующие вопросы.
• Какое количества свойств записывается в журнал?
• Для какого количества вещей записываются в журнал свойства?
• Как часто эти свойства записываются в журнал?
В общем случае, если данные записываются в журнал каждые несколько минут для нескольких свойств на нескольких сотнях удаленных граничных устройств, данные могут храниться в течение нескольких месяцев. Если данные записываются в журнал несколько раз в минуту для 100 свойств в тысяче различных вещей, может потребоваться очистка старых данных даже за несколько недель. Рекомендуется запрашивать и очищать данные небольшими блоками на постоянной основе. Производительность может помочь повысить более частая очистка по расписанию (ежедневная, а не еженедельная).
PTC рекомендует, если требуется хранение данных более одного года, использовать для хранилища внешнюю базу данных.
Способы очистки данных
В то время как очистка данных JavaScript будет различаться в зависимости от сценария, следующие общие шаги будут одинаковыми.
1. Создайте новую вещь и задайте для ее параметра Базовый шаблон вещи значение Планировщик.
2. Откройте раздел Конфигурация и задайте значения для свойств runAsUser и schedule.
▪ В зависимости от очистки предполагается использование JVM для повышения производительности во время выполнения задания. Поэтому наилучшим способом будет разбивать крупные задания на более мелкие во время непиковых часов.
3. Выберите Подписки и нажмите кнопку Добавить.
4. В разделе Информация о подписке выберите Я и установите флажок Включено.
5. Щелкните Входные данные.
6. В поле Событие выберите ScheduledEvent.
7. Добавьте конкретные сведения в сценарий JavaScript для задания очистки.
|
Для сервисов потоков значений и потоков, если дата начала не указана, будут очищены все значения от начала эпохи. Если не указана дата окончания, будут очищены все свойства до момента выполнения сервиса.
|
Оптимальные методы работы с планировщиком
• Не подписывайтесь на событие таймера или планировщика на уровне шаблона вещи. Вместо этого подпишитесь на вещь.
• Не запрашивайте большие объемы данных при работе с часто срабатывающими таймерами. Дополнительные сведения см. на сайте
PTC Community (Сообщество PTC).
• По возможности не запрашивайте и не обновляйте один источник данных в подписке. Вместо этого запрашивайте поток таблицы данных один раз для каждой подписки и один раз в конце задания планировщика, если это необходимо (используя инструкции пакетного обновления).
Очистка потоков значений, потоков, репозиториев файлов