СУБД ЛИНТЕР. Технический обзор


Средства реального времени СУБД ЛИНТЕР


В ЛИНТЕР есть несколько особенностей, выделяющих эту СУБД из ряда аналогов. Это свойства, по которым ЛИНТЕР можно отнести к системам реального времени.

Во-первых, возможность подачи запросов в асинхронном режиме. Отметим, что это именно полнокровная асинхронность с определением процедуры обработки ответа, которая включится только тогда, когда программа будет прервана пришедшим от ЛИНТЕР ответом на запрос.

Во-вторых, ЛИНТЕР может обрабатывать запросы в соответствии с установленными для них приоритетами. Более важные (приоритетные) будут выполнены раньше низкоприоритетных, им будут отданы системой все возможные ресурсы и т.п.

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

В-четвёртых, возможность отделения этапа трансляции запроса от этапа его выполнения, т.е. запрос можно один раз оттранслировать, а затем многократно выполнять, наполняя его каждый раз новым константным содержанием (BIND параметров).

Это особенно удобно в программах сбора информации. При этом можно сочетать выполнение оттранслированного запроса и асинхронный режим его выполнения, что очень важно в системах управления технологическими процессами (например, при сборе информации с датчиков и занесения их базу данных).

Далее отметим возможность слежения из приложения за состоянием использования ресурсов ядра СУБД. Более того, имеется возможность получать статистику по физическому/логическому вводу-выводу и, следовательно, обладать информацией об интенсивности работы системы в тех или иных условиях работы приложения.

Это позволяет написать задачу с супервизорскими функциями. Такая задача производит слежение за процессами, происходящими в ядре ЛИНТЕР, и может решить, что обработка какого-то запроса требует слишком много ресурсов, и приостановить или прервать его обработку.

              




Начало  Назад  Вперед



Книжный магазин