1 / 30

Защищеная СУБД ЛИНТЕР в среде ОС реального времени QNX

Защищеная СУБД ЛИНТЕР в среде ОС реального времени QNX. Внедрения СУБД ЛИНТЕР. финансы (банки, финансовые управления и т.д.) безопасность (подразделения МВД РФ, МО РФ и т.д.) управление (государственные учреждения, министерства, ведомства и т.д.)

kimberly
Download Presentation

Защищеная СУБД ЛИНТЕР в среде ОС реального времени QNX

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Защищеная СУБД ЛИНТЕР в среде ОС реального времени QNX

  2. Внедрения СУБД ЛИНТЕР • финансы (банки, финансовые управления и т.д.) • безопасность (подразделения МВД РФ, МО РФи т.д.) • управление (государственные учреждения, министерства, ведомства и т.д.) • промышленность (добывающая, нефтегазовая, атомная, авиационная и т.д.) С 1990 года СУБД ЛИНТЕР внедрена на предприятиях различных отраслей:

  3. Внедрения СУБД ЛИНТЕР Крупнейшие внедрения на платформах реального времени: • ОАО «Концерн «ВЕГА» • ОАО «МАК Вымпел» • ОАО «ВНИИРА-ОВД» • ОАО «Сургутнефтегаз» • ЗАО «СовТИГаз» • РФЯЦ-ВНИИЭФ г.Саров • РФЯЦ-ВНИИЭТ г.Снежинск • ФГУП ПО «МАЯК» • ОАО «АЭХК» • РНЦ «Курчатовский институт» • НИИСИ РАН

  4. СУБД ЛИНТЕР • Награды в номинациях: • ДЕБЮТ ГОДА • ПРОДУКТ ГОДА • BEST SOFT

  5. Сертифицирован на соответствие требованиям стандартов ISO 9001 и СРПП ВТ ЗАО НПП «РЕЛЭКС»

  6. QNX - ЛИНТЕР Немного истории QNX - ЛИНТЕР

  7. QNX - ЛИНТЕР Жесткие ограничения по внешней памяти Жесткие ограничения по оперативной памяти Частые непредсказуемые сбои питания Ограничения на время тёплого рестарта

  8. Операционные системы • Windows • Linux • FreeBSD • SUN Solaris • Mac OS X • Unix System V • HP-UX • OpenVMS • МС ВС • ИНТРОС • Embedded Linux • Maemo • Android • Windows CE • QNX 4 • QNX6 • VxWorks • ОС РВ (ОС 2000) • ОС/9 • OS9000 • Lynx OS

  9. Память • Минимальный размер запущенного ядра ЛИНТЕР – 900К. При этом отключены транслятор SQL, процедуры, триггеры, полнотекстовый поиск и т.п. • Нормальные требования к памяти 2-4Мб. При этом в ядре СУБД присутствует вся функциональность и используется минимальный кэш. • При необходимости, могут быть использованы десятки Гб памяти для кэширования БД.

  10. Проблемы в ОС реального времени VxWorks – упорядочены глобальные переменные, добавлены инициализаторы статических переменных, добавлены специальные интерфейсы для обмена приложений с ядром и запуска компонент ЛИНТЕР. ОС РВ – модернизированы механизмы обработки сигналов отдельными компонентами ядра и клиентскими приложениями, «обойдена» системная ошибка копирования данных memmove. OS/9 – реализованы специфические методы обмена между процессами, реализована многоуровневая система защиты от «зависания» ОС в случае активной работы с сетью.

  11. Проблемы в QNX • Последний байт 2-Гб файла не читается. • Функции read и write для дисковых устройств могут быть прерваны на границе 512 байт. • Ошибка «нехватка памяти» при выполнении функции write.

  12. Гибкость ЛИНТЕР ЛИНТЕР Клиент лок БД БД БД Клиент лок БД Операторы Операторы Клиент лок БД Клиент лок БД Встроенные устройства Встроенные устройства

  13. Контроль размера файлов регистрации Контролируемые файлы : linter.out – файл регистрации событий ядра СУБД linter.log – файл трассировки запросов lintrace.log – файл трассировки планов выполнения запросов Пример: Linter.log__20080401010100 → Архив Linter.log__20080402010100 → Архив Linter.log__20080403010100 → Архив Linter.log

  14. Распределение по хранилищам ЛИНТЕР Редко модифицици-руемые данные Редко используемые данные Временные данные Системная база данных Секретные таблицы ТЕМР SY00 SY01 … … …

  15. Асинхронность ПРОГРАММА ПРОГРАММА . . . Запрос с указаниемобработчика Продолжение работы Асинхронныйобработчик Продолжениеработы . . . Запрос Продолжениеработы Ожидание завершения запроса Продолжениеработы ЛИНТЕР ЛИНТЕР запрос запрос Вызовасинхронногообработчика

  16. Многонитевость ПРОГРАММА ПРОГРАММА Нить 2 Нить 1 Нить 2 Нить 1 ЛИНТЕР ЛИНТЕР Запрос Запрос Запрос Запрос . . . . . . . . . . . . Ожидание ответа Ожидание ответа Асинхронныйобработчик Асинхронныйобработчик

  17. Статический 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 }

  18. Приоритеты 220 220 220 220 220 220 205 205 205 150 150 150 150 150 150 120 120 120 80 80 80 70 70 70 0 0 0

  19. Управление выполнением запросов Оператор(Администратор) БД Запросы Клиенты 1 Клиент Повысить приоритет 2 Клиент Понизить приоритет 3 Клиент Отменить 4 Клиент Остановить 5 Клиент Продолжить 6 Клиент … …

  20. События Приложение 2 Таблица Приложение 1 Wait event insert Добавлено! Приложение 2 Таблица Приложение 1 Wait event id=2 Id=2 Установлено! БД Приложение 1 Приложение 2 Ждем события А и В Таблица 1 Таблица 2 Ответ

  21. Временные данные БД БД Временная таблица А Приложение Приложение 1 Область таблицы «в памяти» Таблица А Таблица А Таблица А Приложение 2 Таблица А

  22. Пакетная загрузка и извлечение данных Клиент Сервер Клиент Сервер Линтер Линтер Row 1 Row 1 Get Many Put Many Row 2 Row 2 … … Row 100 Row 100 Клиент Сервер Клиент Сервер Get Row 1 Row 1 Линтер Линтер Get Row 2 Row 2 … … Get Row 100 Row 100

  23. Интеграция /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 – каталог с БД ЛИНТЕР

  24. Подсистема безопасности • Лицензия ФСТЭК на проведение работ в области создания средств защиты информации • Лицензия ФСБ на осуществление работ с использованием сведений, составляющих государственную тайну • Лицензия Министерства обороны Российской Федерации на деятельность в области создания средств защиты информации • Сертификаты ФСТЭК России на соответствие СУБД ЛИНТЕР второму классу защитыинформации от НСД и второму уровню контроля отсутствия НДВ

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

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

  27. Архивирование • Архивирование набора таблиц. Параллельно разрешена работа других приложений • Архивирование всей БД. Параллельно разрешена работа других приложений. • Архивирование в режиме инкремента. Архив уже есть. В него переносятся только изменения с момента последнего архивирования. • Архивирование в режиме ожидания. Отдельно «висит» программа архивирования, отдельно идёт работа с БД. Как только в БД что-то пишется, то сразу передаётся в архив. • Ядро само может выполнять архивирование – клиент только подаёт команду на архивирование.

  28. Горячий резерв Резервный Резервный Клиент Авария Клиент Синхронизация Клиент Резервный

  29. Дополнительные полезности • Использование сверхбольших объёмов памяти • Поддержка длинных файлов • Поддержка Oracle-расширений (join, connect by, и т.п.) • Поддержка новых возможностей SQL-2003 (Sequences, аналитические функции, Siblings, similar, match, select в select и т.п.) • Триггеры и хранимые процедуры. • Пользовательские функции. • Отложенные проверки целостности. • Графические утилиты администрирования. • Различные программные интерфейсы (odbc, jdbc, .net, oledb, perl, php, python, ruby)

  30. Спасибо за внимание! И это далеко не все возможности СУБД ЛИНТЕР

More Related