Определить список таблиц, которые обновляются, когда значения тегов изменяются или вставляются в сервер Wonderware Historian.

Я хотел бы спросить следующее:

  1. Определите список таблиц, которые обновляются при изменении значений тегов или вставке нового тега в систему.

  2. Какой SQL-запрос я должен выполнить, чтобы получить список обновленных тегов, включая их последнее значение, старое значение, обновленное время и т. д. в любой момент времени?

Пожалуйста, дайте мне знать об этом.


person stateTest    schedule 19.09.2017    source источник
comment
Все зависит от структуры вашей таблицы. Есть ли у вас столбец меток времени, столбец свойств удостоверения? row_versioning? Как насчет некоторых примеров данных и ожидаемого результата?   -  person scsimon    schedule 19.09.2017


Ответы (1)


Несмотря на тесную интеграцию с SQL Server, Wonderware Historian фактически не хранит данные тегов в реальном времени в SQL Server. Вместо этого все данные тегов хранятся в собственной файловой системе. Данные предоставляются в SQL Server в виде представлений через собственный поставщик OLE DB. Следующий pdf-файл поможет лучше понять архитектуру WW Historian:

http://iom.invensys.com/EN/SoftwareGCC14Presentations/Wonderware/WW%20INFO-07%20Valuable%20Information%20From%20WSP%202014%20R2.pdf

В следующем pdf-файле содержится более подробная информация о том, какие возможности и функции поддерживаются поставщиком OLE-DB, включая параметры запроса, управление версиями и т. д.:

https://www.logic-control.com/datasheets/1/Historian/HistorianConcepts.pdf Что касается получения последних значений для каждого из тегов, вы можете запросить «живую» таблицу/представление.

person Edmond Quinton    schedule 19.09.2017
comment
Спасибо за ваш ответ. Я хотел бы SQLdependency, который - person stateTest; 20.09.2017
comment
Спасибо за ваш ответ. Я прочитал документацию и вижу Live view. Точно так же я просмотрел такие таблицы, как Modlogtable и Modlogcolumn, но я не уверен, соответствуют ли они моей цели, как указано ниже, а также, как указано в документации, они снижают производительность сервера базы данных. Моя цель - создать SQL-зависимость, которая поможет мне найти теги, значения которых были изменены в определенное время. Эта зависимость работает только с таблицами, а не с представлениями. Итак, есть ли какая-либо таблица, которая может сказать мне, когда теги обновляются или когда данные получены? - person stateTest; 20.09.2017
comment
@MuhammadHammad Вы хотите увидеть изменения в конфигурации (добавлены или удалены новые теги) или пытаетесь подписаться на изменения в существующих значениях тегов? - person Edmond Quinton; 20.09.2017
comment
Я ищу решения для обоих, особенно изменения в существующих значениях тегов - person stateTest; 23.09.2017
comment
@MuhammadHammad - К сожалению, я не верю, что то, что вы хотите, возможно из коробки с помощью поставщика WW Historian OLE DB. Я подозреваю, что вам лучше всего было бы реализовать ленивый поток в вашем приложении, который периодически проверяет метку времени каждого тега в таблице времени выполнения и сравнивает ее с кэшированной копией, которую вы храните в памяти, чтобы определить, произошли ли изменения с момента последнего сканирования. Будьте осторожны, хотя слишком быстрый запрос ко многим тегам может повлиять на производительность сервера для Historian и вашего приложения. - person Edmond Quinton; 26.09.2017
comment
@EdmondQuinton: ссылки не работают, не могли бы вы обновить новую ссылку или добавить ключевые слова для поиска в свой ответ. - person Amandeep Jiddewar; 27.04.2021