26
Особенности функционирования СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕР в операционных системах реального времени

  • Upload
    buck

  • View
    95

  • Download
    5

Embed Size (px)

DESCRIPTION

Особенности функционирования СУБД ЛИНТЕР в операционных системах реального времени. Особенности функционирования СУБД ЛИНТЕР в операционных системах реального времени. Наши клиенты: Министерство обороны РФ ФСБ РВ МВД РФ ВНИИСИ РАН АФК ВНИИРА-ОВД - PowerPoint PPT Presentation

Citation preview

Page 1: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования

СУБД ЛИНТЕРв операционных системах

реального времени

Page 2: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

И даже в области балета, мы впереди планеты всей

Наши клиенты:

» Министерство обороны РФ» ФСБ РВ» МВД РФ » ВНИИСИ РАН» АФК <Система>» ВНИИРА-ОВД » Воронежский государственный

университет» ФГУ РНЦ <Курчатовский институт>» ОАО <Сургутнефтегаз>» Lucent Technologies Inc.» Toshiba American business solutions» ADIC» AlignMark, Inc.» Florida International University» Avantgarde Software, Inc.» Step2Buy Inc.» Ecora Software Corporation» Global System Services » EC-leasing Corporation

Наши партнеры:

» Global System Services» ООО <Альт Линукс> » ЗАО <Астра СТ> » ООО <ЛОТ> » Российская академия наук » РНЦ Курчатовский институт » Министерство промышленности, науки и

технологий Российской Федерации » Воронежский государственный

университет » Московский инженерно-физический

институт » Red Hat, Inc. » VDEL Ltd.

Page 3: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Переносимость

» QNX 4, » QNX 6, » VxWorks, » ОС РВ, » ОС/9, » OS9000, » Windows CE, » linux и др.

Page 4: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Гибкость

ЛИНТЕР

Клиент

Клиент

Клиент

Клиент

Операторы БД

Встроенные устройства

ЛИНТЕР

Операторы БД

Встроенные устройства

локБД

локБД

локБД

локБД

Page 5: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Контроль размера файлов регистрации

Контролируемые файлы : linter.out – файл регистрации событий ядра СУБДlinter.log – файл трассировки запросовlintrace.log – файл трассировки планов выполнения запросов

Пример:Linter.log__20080401010100 → АрхивLinter.log__20080402010100 → АрхивLinter.log__20080403010100 → Архив

Linter.log

Page 6: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Распределение по хранилищам

ЛИНТЕР

ТЕМР SY00 SY01 … ……

Временныеданные

Системнаябаза данных

Секретныетаблицы

Редкомодифицици-руемые данные

Редкоиспользуемыеданные

Page 7: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Асинхронность

ЛИНТЕР

.

.

.

Запрос

Продолжениеработы

Ожидание завершения запроса

Продолжениеработы

ПРОГРАММА

запрос

ЛИНТЕР

.

.

.

Запрос с указаниемобработчика

Продолжение работы

Асинхронныйобработчик

Продолжениеработы

ПРОГРАММА

запрос

Вызовасинхронногообработчика

Page 8: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Многонитевость

ЛИНТЕР

Нить 1 Нить 2

Запрос

.

.

.

Ожидание ответа

Запрос

.

.

.

Ожидание ответа

ПРОГРАММА

ЛИНТЕР

Нить 1 Нить 2

Запрос

.

.

.

Асинхронныйобработчик

Запрос

.

.

.

Асинхронныйобработчик

ПРОГРАММА

Page 9: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Статический SQL

/* ESQL AT conn EXECUTE IMMEDIATE INSERT INTO T VALUES(:i);*/{PCI_NewVar((char *)&i,4,4,0,0,(int *) 0);#define PCI_STAT_TEXT \ "\276\000\040\111\002\000\001\000\274\000\264\000\067\111\000\040” \

“\000\000\003\000\004\000\002\012\000\377\377\377\377\377\377\000” \

“\000\000\000\377\377\000\000\001\000\030\007\000\000\004\000\002\012"

PCI_PresetStat(PCIDb[0], 0, (_PCI_B_)PCI_STAT_TEXT, 192, 0, 1, 0);PCI_Exec(PCIDb[0], 4096, 0 , 0, 0);Fill_Sqlca((char *)&sqlca,0);#undef PCI_STAT_TEXT}

Page 10: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Приоритеты

220

220

205

150

150

120

80

70

0

220

220

205

150

150

120

80

70

0

220

220

205

150

150

120

80

70

0

Page 11: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Управление выполнением запросов

1 Клиент

Клиент

Клиент

Клиент

Клиент

Клиент

Оператор(Администратор)

БДЗапросы Клиенты

2

3

4

5

6

Повысить приоритет

Понизить приоритет

Отменить

Остановить

Продолжить

Page 12: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

События

Приложение 1 Таблица Приложение 2Wait event

Добавлено!

insert

Id=2

Приложение 1 Таблица Приложение 2Wait event id=2

Установлено!

Таб

ли

ца

1

Приложение 1 БД Приложение 2

Ждем события А и В

Ответ

Таб

ли

ца

2

Page 13: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Временные данные

Таблица А

Временная таблица А

Приложение 1

БД

Приложение 2Таблица А

Область таблицы

«в памяти»

Приложение

БД

Таблица А

Таблица А

Page 14: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Пакетная загрузка и извлечение данных

Row 1

Клиент Сервер

Put ManyRow 2

Row 100

Линтер

Row 1

Клиент Сервер

Row 2

Row 100

Линтер

Row 1

Клиент Сервер

Get ManyRow 2

Row 100

Линтер

Get Row 1

Клиент Сервер

Get Row 2

Get Row 100

Линтер

Page 15: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Интеграция

/app/bin/core – пользовательское приложение/app/bin/plugin.so – компонент пользовательского приложения/app/bin/ext1.so – компонент пользовательского приложения/app/doc/readme.txt/app/doc/user_manual.html/app/linter/linter – основной файл ядра ЛИНТЕР/app/linter/lhb – файл программы-архиватора ЛИНТЕР/app/db – каталог с БД ЛИНТЕР

Page 16: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Подсистема безопасности

• Лицензия ФСТЭК на проведение работ в области создания средств защиты информации

• Лицензии РАСУ на разработку, производство и ремонт вооружения и военной техники

• Лицензия ФСБ на осуществление работ с использованием сведений, составляющих государственную тайну

• Лицензия Министерства обороны Российской Федерации на деятельность в области создания средств защиты информации

• Сертификаты ФСТЭК России на соответствие СУБД ЛИНТЕР второму классу защиты информации от НСД и второму уровню контроля отсутствия НДВ  

Page 17: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Подсистема полнотекстовой индексации

Поиск документов, содержащих слова или их комбинацииПоиск документов, содержащих фразы с определённой

последовательностью словПоиск документов в которых определённые слова расположены на

определённом расстоянииПоиск документов, содержащих слова, похожие на шаблонПоиск документов с игнорированием регистраИндексация документов на разных языкахИндексация документов в форматах doc, ppt, xls, ps, rtf, xml, html

Page 18: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Поддержка OpenGIS

Типы данных:POINT - точкаLINESTRING[ (n) ] - ломаная линияPOLYGON[ (n) ] - многоугольникMULTIPOINT[ (n) ] - набор точекMULTILINESTRING[ (n) ] - набор ломаных линийMULTIPOLYGON[ (n) ] - набор многоугольниковBOX - прямоугольникLINE - простая (не ломаная) линияCIRCLE - окружностьGEOMETRYCOLLECTION[ (n) ] - набор геометрических объектовGEOMETRY - обобщенный геометрический тип (может содержать

любой геометрический объект)

Поддерживаются WKT- и WKB - форматы

Page 19: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Архивирование

1. Архивирование набора таблиц. Параллельно разрешена работа других приложений

2. Архивирование всей БД. Параллельно разрешена работа других приложений.

3. Архивирование в режиме инкремента. Архив уже есть. В него переносятся только изменения с момента последнего архивирования.

4. Архивирование в режиме ожидания. Отдельно «висит» программа архивирования, отдельно идёт работа с БД. Как только в БД что-то пишется, то сразу передаётся в архив.

5. Ядро само может выполнять архивирование – клиент только подаёт команду на архивирование.

Page 20: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Горячий резерв

Главный

КлиентРезервный

Авария

Синхронизация

Резервный

Клиент

Клиент

Page 21: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Дополнительные полезности

1. Использование сверхбольших объёмов памяти2. Поддержка длинных файлов3. Поддержка Oracle-расширений (join, connect by, и т.п.)4. Поддержка новых возможностей SQL-2003 (Sequences,

аналитические функции, Siblings, similar, match, select в select и т.п.)

5. Триггеры и хранимые процедуры.6. Пользовательские функции.7. Отложенные проверки целостности.8. Графические утилиты администрирования.9. Различные программные интерфейсы (odbc, jdbc, .net, oledb, perl,

php, python, ruby)10.И т.д.

Page 22: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Память

Минимальный размер запущенного ядра ЛИНТЕР – 900К. При этом отключены транслятор SQL, процедуры, триггеры, полнотекстовый поиск и т.п.

Нормальные требования к памяти 2-4Мб. При этом в ядре СУБД присутствует вся функциональность и используется минимальный кэш.

При необходимости, могут быть использованы десятки Гб памяти для кэширования БД.

Page 23: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Проблемы в ОС реального времени

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

ОС РВ – модернизированы механизмы обработки сигналов отдельными компонентами ядра и клиентскими приложениями, «обойдена» системная ошибка копирования данных memmove.

OS/9 – реализованы специфические методы обмена между процессами, реализована многоуровневая система защиты от «зависания» ОС в случае активной работы с сетью.

Page 24: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Проблемы в QNX

Проблемы в QNX1. Последний байт 2-Гб файла не читается.2. Функции read и write для дисковых устройств могут быть

прерваны на границе 512 байт.3. Ошибка «нехватка памяти» при выполнении функции write

Page 25: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Перспективы развития

1. Перенос в RTOS322. Аппарат хранимых событий. Позволит привязать к конкретному

временному событию (фиксированному или циклическому) наступление определённого события или запуск хранимой процедуры.

3. Управление процессом квантования запросов по времени и возможность использования функции sleep() в хранимых процедурах.

4. Автоматическая аутентификация по имени пользователя, зарегистрированного в ОС.

5. Библиотека управления запуском и остановом ядра, создания БД и т.п.

В глобальной перспективе – модернизация ядра СУБД по технологии микроядра с возможностью «горячего» обновления модулей.

Page 26: Особенности функционирования  СУБД ЛИНТЕР в операционных системах реального времени

Особенности функционирования СУБД ЛИНТЕРв операционных системах реального времени

Заключение

Мы надеемся на вашу заинтересованность и поддержку в исполнении Планов.

Спасибо.