Базы данных - ЛИНТЕР - статьи

         

Средства реального времени


СУБД ЛИНТЕР имеет ряд свойств, позволяющих отнести ее (с некоторыми допущениями) к системам реального времени:

  • возможность выполнения запросов в асинхронном режиме. Результат окончания выполнения асинхронной операции обрабатывается процедурой обработки ответа, которая запускается тогда, когда от ядра СУБД будет получен ответ.
  • возможность обрабатывать запросы в соответствии с установленными для них приоритетами. Более важные (приоритетные) запросы будут выполнены раньше низкоприоритетных, им будут отданы системой все возможные ресурсы и т.п.
  • поддержка аппарата событий, т.е. возможность приложения устанавливать особые ситуации в БД и обеспечивать реакцию на их возникновение. Например, какое-то приложение специальным SQL-запросом устанавливает событие A (допустим, это модификация данных в таблице). Другие приложения могут запросить, чтобы их оповестили о возникновении события A. По возникновению этого события, запросившие его приложения будут прерваны, включатся соответствующие процедуры обработки ответа (на запрос об оповещении). По окончании обработки события (например, после того, как получены изменённые данные), приложение продолжит работу с того места, где оно было прервано.
  • возможность отделения этапа трансляции запроса от этапа его выполнения, т.е. запрос можно один раз оттранслировать, а затем многократно выполнять, наполняя его каждый раз новым константным содержанием (привязка параметров). Это особенно удобно в программах сбора информации. При этом можно сочетать выполнение оттранслированного запроса и асинхронный режим его выполнения, что очень важно в системах управления технологическими процессами (например, при съёме информации с датчиков и занесения их в базу данных).
  • возможность слежения из приложения за состоянием использования ресурсов ядра СУБД, что позволяет написать приложение с супервизорскими функциями. Такое приложение производит слежение за процессами, происходящими в ядре СУБД ЛИНТЕР, и может решить, что обработка какого-то запроса требует слишком много ресурсов, и приостановить или прервать его обработку.


  • Содержание раздела