Реляционная база данных или сервер архивных данных реального времени для регистрации технологических данных?

Роберт МакИлврайд, Cogent Real-Time Systems Inc.

Много лет назад, когда я жил там, где персональные компьютеры были относительно новым явлением, в одном из офисов я увидел секретаря, что-то без остановки печатавшего на своем PC. Она была в восторге от возможности использовать столь мощный инструмент. «Смотрите!» - сказала она взволнованно, - «теперь так легко писать и корректировать написанное!» Я взглянул на экран и не смог сдержать улыбку. Она составляла целое деловое письмо в одной-единственной ячейке Excel-таблицы.

Как выбрать подходящий для решения конкретной задачи инструмент? Для секретаря подходящим инструментом оказался тот единственный, что был доступен, и которым она умела пользоваться. Какой же инструмент подходит для регистрации данных из приложения управления технологическими процессами? Иногда CSV-файл — это все, что нужно. Иногда достаточно Excel. Хотя чаще инженеры или системные интеграторы используют либо реляционную базу данных, либо сервер архивных данных реального времени для размещения записей постоянного хранения технологических данных.

Плюс реляционных баз данных в том, что они доступны и хорошо всем знакомы. SQL Server, MySQL, Oracle или любые другие реляционные базы данных, включая Microsoft Access, обычно уже установлены в компании. Они предлагают стандартный интерфейс, ODBC, и IT-отдел с ними знаком. Неудивительно, что реляционные базы данных используются для регистрации технологических данных, особенно когда запросы к данным исходят от административного персонала, знакомого с подобным типом баз данных.

Но не для всех приложений управления технологическими процессами реляционная база данных будет идеальным вариантом. Спроектированные под нужды корпораций, бизнеса и банков для хранения данных о транзакциях, реляционные базы данных оптимизированы для анализа комплексных взаимосвязей между данными. Эти базы данных могут позволить сосредоточить вычислительные мощности на таких взаимосвязях, поскольку данные сами по себе обновляются относительно нечасто, обычно раз в несколько секунд, минут или часов. Но если аналитическая мощь хороша для бизнес-приложений, то приложения управления технологическими процессами обычно в ней не нуждаются. Что им нужно, так это скорость.

Сервер архивных данных реального времени, с другой стороны, как бортовой самописец для производственных данных. Это скорее временная, нежели реляционная, база данных, хранящая записи, включающие только имя, значение, состояние и временную метку точки данных, в неструктурированном файле. Сервер архивных данных проектировался для быстрого сохранения и извлечения данных и обычно может осуществлять миллионы транзакций в секунду. Такого рода поведение ценно для процессов с переменными, меняющимися множество раз в секунду, и в случаях, когда фиксация каждого события в ходе каждой 8-часовой смены крайне необходима.

Несмотря на функциональные преимущества сервера архивных данных реального времени, некоторые компании отдают предпочтение реляционным базам данных для регистрации технологических данных. Что полностью закономерно, поскольку это инструмент, с которым IT-персонал и высшее руководство компании знакомы лучше всего. Но есть три аргумента, почему такого подхода может оказаться недостаточно.

  1. Сервер архивных данных реального времени регистрирует каждое изменение данных точки, даже когда значения стремительно меняются. С помощью высоко эффективного алгоритма сохранения полный набор данных может храниться в течение длительного периода времени. Реляционная база данных, напротив, может удалить некоторую или большую часть данных по мере заполнения новыми поскольку она не оптимизирована для хранения данных при очень высокой скорости обработки транзакций. К сожалению, данные удаляются независимо от их важности. Так все может закончиться регистрацией штатных изменений и удалением нестандартных событий, способных привести к аварийным ситуациям. В дополнение к отслеживанию каждого изменения, большого или маленького, возможности сервера архивных данных реального времени при работе с большими объемами полезны для обнаружения неявных закономерностей, которые можно выявить только за несколько месяцев или лет.
  2. Существенным преимуществом сервера архивных данных реального времени является его «природная» способность обрабатывать запросы с временным критерием. Например, вам может потребоваться среднее отклонение точки, которая изменяется в среднем 25 раз в секунду, с интервалом в 10 секунд за последние 2 минуты. Хороший сервер архивных данных обеспечивает простой способ отправки такого запроса и быстро возвращает результат, расходуя при этом минимум системных ресурсов. Встроенные функции формулирования запросов обычно позволяют выбрать любой промежуток времени, от нескольких секунд до недель и более, и возвращают средние значения, процентные отношения положительных и отрицательных состояний, временные корреляции, регрессии, средние отклонения и т. д. Все это может быть выполнено и посредством SQL-запросов к реляционной базе данных, но потребует более трудоёмкого программирования и большей нагрузки на системные ресурсы.
  3. Два преимущества сервера архивных данных реального времени, описанные выше, возможно, проще оценить во время работы с экранами текущих трендов. Расчет и отображение меняющейся кривой графика, которая обновляется несколько раз в секунду, требует не только способности регистрировать все точки данных в реальном времени, но и постоянно оперативно обновлять их на меняющемся экране. А если пользователь хочет прокрутить набор данных назад или вперед по мере загрузки, сервер должен уметь справляться с частыми, непрерывными запросами к набору данных. Такого рода задача сложна для типичной реляционной базы данных, разве только скорость обновления экрана будет раздражающе медленной.

Даже отметив эти моменты, стоит сказать, что существует множество приложений, для которых регистрация производственных данных в реляционную базу данных работает просто замечательно. На самом деле, иногда достаточно регистрации в CSV-файл. Справедливости ради заметим, что это совсем не тот уровень несоответствия технологии, как при написании целого делового письма в одной ячейке таблицы. Хорошо информированный системный интегратор или инженер поймет ценность каждого подхода, оценит нужды проекта и доступные ресурсы и применит подходящий инструмент.

Основанная в 1995 году Cogent Real-Time Systems является лидером в области интеграции данных реального времени между системами Windows, Linux и QNX. Среди их клиентов Банк Канады, Cadbury Chocolate и Европейское агентство космических исследований. Cogent применяет свой опыт в сфере передачи данных реального времени для создания продуктов OPC следующего поколения. Для получения большей информации вы можете связаться с Cogent по электронной почте info@cogent.ca или посетить сайт www.opcdatahub.com. Вы также можете нам позвонить: +1 (905) 702 7851

Источник: http://cogentdatahub.com/Download/PDF_Release/RDB_or_Historian.pdf

    Яндекс.Метрика