Встроенная СУБД получает блокировку и каскадное удаление

Enea обновила свои встраиваемые реляционные СУБД в режиме реального времени.
Обновление Версии 8.7 до Polyhedra IMDB (база данных в памяти) и Polyhedra FlashDBMS добавляет возможности блокировки базы данных и каскадного удаления.

Многогранник предназначен для высокопроизводительных и высокодоступных систем и устройств связи, военной и промышленной автоматизации, работающих под управлением ОС Linux, Windows или Enea OSE.
По словам компании, СУБД работает в «пользовательском пространстве» и не требует ни изменений ядра, ни специальных привилегий, ни специальной установки.


Многогранная СУБД в отказоустойчивой конфигурации

Многогранники предлагаются в двух основных версиях: многогранники IMDB, для 32- и 64-разрядных систем;
и СУБД Polyhedra Flash для автономных устройств с низким энергопотреблением и ограниченными ресурсами.
Обе версии имеют общую кодовую базу, включая механизм SQL, клиент-серверную архитектуру и протоколы, а также модель горячего резервирования для использования в системах высокой доступности.

По словам Enea, СУБД Polyhedra Flash может работать всего лишь с 1 МБ ОЗУ для кода и кеша, хотя ее можно настроить с увеличенным кешем для повышения производительности.
Многогранник IMDB, полностью резидентная база данных, требует больше оперативной памяти.
Однако он обеспечивает «значительно более быструю и более предсказуемую производительность», чем дисковые альтернативы, - «на порядок быстрее» - даже когда дисковая альтернатива кэшируется в ОЗУ.

Что нового в Polyhedra v8.7

Две новые функции, реализованные в версии 8.7, как описано Enea, это…

  • Блокировка базы данных - позволяет приложению запрашивать часть базы данных, чтобы другие не могли вносить изменения, пока клиент с блокировкой принимает решение об изменениях, которые он хочет внести.
    По сравнению с блокировкой базы данных, таблицы или строки Polyhedra даже позволяет блокировать отдельные поля записи, что очень важно для систем реального времени.
    Это позволяет, например, одному клиенту блокировать поля конфигурации для записи, не останавливая другие приложения, обновляющие поле значения по мере поступления новых показаний. Многогранник также позволяет указывать блокировки как пессимистические или оптимистические и может автоматически преобразовывать пессимистические блокировки в оптимистические блокировки после короткий период.
    Новый механизм блокировки интегрирован в пользовательскую систему безопасности Polyhedra, поэтому администратор базы данных может контролировать, какие таблицы и какие атрибуты таблицы может заблокировать кто-либо.
  • Каскадное удаление - позволяет администратору базы данных определять перекрестные ссылки между таблицами, говоря, что поле является «внешним ключом» для другой таблицы в базе данных.
    Он также обеспечивает ссылочную целостность, что означает, что если значение в записи для атрибута внешнего ключа не равно нулю, то указанная запись должна существовать.
    Лицо, создающее таблицы, содержащие внешние ключи, может сказать, что должно произойти, когда удаленная запись удаляется: вместо поведения по умолчанию сбоя транзакции для поддержания целостности, ссылка может быть установлена ​​на ноль, или запись, содержащая ссылку, может быть удалено - «каскадное удаление».

Polyhedra v8.7 также добавляет драйвер ODBC для использования на Raspberry Pi в сочетании с unixODBC, облегчая написание программ на PHP и Python, которые взаимодействуют с Polyhedra.
«Конечно, вы должны будете убедиться, что unixODBC установлен в вашей системе (sudo apt-get install unixodbc), а для программ Python вам также понадобится pyodbc (sudo apt-get python-pyodbc)», - объясняет компания. ,

Помимо полных версий Polyhedra для Linux, Windows и OSE, компания предлагает три бесплатных версии Polyhedra Lite : для Linux в целом;
для Linux на Raspberry Pi;
и для винды.
Для загрузки требуется бесплатная регистрация.

Дополнительная информация о Polyhedra IMDB и Polyhedra FlashDBMS доступна на веб-сайте Enea здесь .