СУБД «Многогранники»
Разработчик(и) | ЭНЕА АБ |
---|---|
Первоначальный выпуск | 30 июня 1993 г |
Стабильная версия | 9,7 / 17 декабря 2021 г |
Операционная система | Linux , Windows , Solaris , VxWorks , LynxOS , Integrity , OSE |
Тип | в памяти СУБД ; на основе флэш-памяти РСУБД |
Лицензия | Проприетарная версия , Polyhedra Lite доступна как бесплатная программа. [1] |
Веб-сайт | Эней |
Polyhedra — это семейство систем управления реляционными базами данных предлагаемое компанией ENEA AB , шведской . Первоначальная версия Polyhedra (теперь называемая Polyhedra IMDB) представляла собой систему управления базами данных в памяти , которую можно было использовать в с высокой доступностью конфигурациях ; В 2006 году была представлена СУБД Polyhedra Flash, позволяющая базы данных хранить во флэш-памяти . [2] Во всех версиях используется модель клиент-сервер, обеспечивающая защиту данных от некорректного поведения прикладного программного обеспечения, и используются одни и те же интерфейсы SQL , ODBC и JDBC типа 4 . Polyhedra предназначена в первую очередь для встраиваемого использования производителями оригинального оборудования (OEM), а среди известных заказчиков — Ericsson , ABB , Emerson , Lockheed Martin , United Utilities и Siemens AG .
Компания
[ редактировать ]Разработка Polyhedra была начата в 1991 году компанией Perihelion Technology Ltd, дочерней компанией Perihelion Software Ltd (PSL); Первоначально проект имел рабочее название «Perihelion Application Toolkit», но вскоре был переименован в Polyhedra (с использованием оставшегося товарного знака от другого проекта PSL). В 1994 году руководство PTL выкупило компанию, и название компании было изменено на Polyhedra plc, чтобы соответствовать названию продукта. Polyhedra plc, в свою очередь, была приобретена Enea AB в 2001 году. [3] [4] Вся разработка и поддержка по-прежнему осуществляется в английском городке Шептон-Маллет , где базировалась PSL.
Функции
[ редактировать ]Тим Кинг, основатель Perihelion Software Ltd , разработал реляционную СУБД для исторических данных в рамках своей докторской работы; [5] Дэйв Стоунхэм, создавший PTL, ранее разработал систему SCADA . Основываясь на этом опыте, Polyhedra изначально была разработана «чтобы принести преимущества реляционных технологий на рынок встраиваемых систем». Для этого он должен был занимать мало места, быть очень быстрым... и избегать необходимости опроса , который снижает производительность. Следовательно, с самого начала он был разработан для:
- хранить рабочую копию данных в памяти (хотя сейчас существует вариант, в котором данные хранятся во флэш -файле);
- использовать архитектуру клиент-сервер для защиты данных от повреждения мошенническим кодом приложения;
- иметь механизм «активного запроса» для обновления клиентских приложений при возникновении соответствующих изменений в базе данных;
- имеют очень простую модель обработки, в которой транзакция представляет собой либо изменение схемы, либо запрос, либо запрос на набор вставок, обновлений и/или удалений — такие изменения могут быть выражены либо с помощью операторов SQL, либо путем обновления с помощью активных запросов с помощью (в сочетании с активными запросами) механизм оптимистичного параллелизма для обработки конфликтующих обновлений;
- иметь механизм наследования таблиц , который в сочетании с триггерами базы данных (через язык CL, см. ниже) позволяет разработчику базы данных программировать базу данных объектно-ориентированным способом. Наследование таблиц также позволяет избежать или уменьшить необходимость в дополнительных таблицах, первичный ключ которых является внешним ключом другой таблицы, и, таким образом, может упростить многие запросы и обновления.
- иметь историка [6] модуль, позволяющий эффективно собирать, хранить, архивировать и запрашивать большие объемы данных временных рядов.
Polyhedra IMDB обеспечивает постоянство данных за счет использования снимков и ведения журналов ; СУБД Polyhedra Flash использует теневую пейджинг , с 2 уровнями рекурсии. Кроме того, Polyhedra можно использовать в конфигурациях горячего резервирования для повышения доступности . Транзакционная модель, используемая всеми продуктами Polyhedra, обеспечивает атомарность, согласованность и изоляцию (как определено свойствами ACID ); надежность обеспечивается в СУБД Polyhedra Flash, а в Polyhedra IMDB клиенты могут выбирать модель устойчивости при выполнении своих транзакций.
«Система СУБД Polyhedra принципиально отличается от других реляционных систем своим активным поведением. Это достигается за счет двух механизмов: активных запросов и языка управления (CL). Активный запрос выглядит совершенно как обычный запрос, в котором некоторые данные извлекается и/или записывается, но вместо этого запрос остается в базе данных до тех пор, пока он не будет явно прерван. Когда происходит изменение данных, которое может изменить результат запроса, приложение CL, которое является полностью объектно-ориентированным. язык сценариев, поддерживающий инкапсуляцию, сокрытие и наследование информации, может определять поведение данных в базе данных. Это означает, что методы, частные или общедоступные, могут быть связаны с данными, выполняющими над ними операции без участия приложения». [7]
Polyhedra не является СУБД общего назначения, поскольку ограниченная транзакционная модель не отвечает всем потребностям, а ее модель отказоустойчивости основана на подходе горячего резервирования (для минимизации затрат на оборудование), а не на кластеризации (что лучше для нагрузки ). делиться). Однако его ограничениями являются преимущества во встроенном использовании, когда в развернутом приложении упор делается на производительность и стоимость, а не на обработку постоянно меняющихся моделей использования.
Большинство продуктов Polyhedra доступны для покупки по собственной лицензии, но в 2012 году Enea выпустила Polyhedra Lite по лицензии бесплатного программного обеспечения. [1]
История выпусков
[ редактировать ]- 1991 Начало разработки.
- 1993 Polyhedra 1.0 , работающей в памяти : первый коммерческий выпуск реляционной СУБД (RDBMS).
- 1995 Портировано на Windows и Linux .
- 1996 Polyhedra 2.0 : добавлены горячего резерва конфигурации для использования в приложениях, требующих высокой доступности . Первый порт на RTOS ( pSOS )
- 1997 Polyhedra 3.0 : новый механизм хранения данных в памяти для повышения эффективности использования пространства и времени.
- 1999 Polyhedra 3.1 : добавлены новые типы данных, ODBC API . ОСЭ . Порт
- 2001 Polyhedra 4.0 : поддержка JDBC , дополнительный тип индекса, реплики только для чтения, многопоточность.
- 2002 Polyhedra 4.1 : связь клиент-сервер переработана для существенного повышения производительности, особенно для клиентских приложений, использующих API ODBC (теперь считающийся «родным» API для всех платформ).
- 2003 Polyhedra 5.0 : UNICODE , миграция схемы ( SQL 'ALTER TABLE' ).
- 2004 Polyhedra 6.0 : вновь введена поддержка 64-битных версий для Linux и Solaris . (Ранее он был доступен на DEC Alpha под Digital UNIX , пока использование этой платформы вообще не прекратилось.) Впоследствии Polyhedra64 был портирован на Windows x64 .
- 2006 Представлена СУБД Polyhedra Flash , основанная на ответвлении кодовой базы Polyhedra IMDB.
- 2007 Polyhedra 7.0 : унифицированы базы кода СУБД Polyhedra IMDB и Polyhedra Flash для упрощения поддержки и большей общности функций. Кроме того, улучшено управление ресурсами и многопоточность.
- 2008 Polyhedra 8.0 : СУБД Polyhedra Flash теперь поддерживает горячего резерва конфигурации для использования в приложениях, требующих высокой доступности , аналогично Polyhedra IMDB. В Polyhedra 8.1 добавлена поддержка Linux/MIPS, возможность отслеживать активные запросы и улучшены архиваторы.
- 2009 Polyhedra 8.2 : драйверы ODBC для Linux и IPv6.
- 2010
- Polyhedra 8.3 : некоторые улучшения SQL и потоковая передача данных из архива.
- Многогранники 8.4 : повышение производительности
- 2011 Polyhedra 8.5 : улучшенная интеграция со сторонними инструментами и улучшенная производительность в Windows. Серверы-реплики можно использовать в разветвленной конфигурации для лучшего масштабирования.
- 2012 Polyhedra 8.6 : 64-битный целочисленный тип данных. Polyhedra Lite представила: [1] бесплатная версия Polyhedra32 IMDB с ограниченной функциональностью, доступная для Windows, а также для Linux на x86 и Raspberry Pi . [8]
- 2013
- Многогранники 8.7 : [9] блокировка и каскадное удаление .
- Многогранники 8.8 : [10] зашифрованная связь
- 2014 Polyhedra 8.9 : улучшения SQL ( GROUP BY и HAVING , DISTINCT, внешние соединения ), улучшения безопасности и онлайн-резервное копирование данных временных рядов.
- 2015 Polyhedra 9.0 : частичная репликация базы данных только для чтения через механизм подписки, поставщик данных ADO.NET для Polyhedra и улучшения собственного «API обратного вызова», которые могут привести к значительному повышению производительности.
- 2016 Polyhedra 9.1 : двунаправленная подписка и частичная репликация таблиц, мониторинг внутренних ресурсов и модуль Python DB-API с расширениями для функций, специфичных для Polyhedra, таких как активные запросы.
- 2017
- Polyhedra 9.2 : уменьшено использование памяти, API RDI (Remove Device Interface), OPC UA RDI и команда SQL EXPLAIN.
- Многогранники 9.3 : репликация, инициируемая сервером.
- 2018 Polyhedra 9.4 : встроенный API базы данных и ограниченные индексы на основе функций SQL.
- 2019 Polyhedra 9.5 : режим ожидания резервного копирования, интерфейс MQTT и интерфейс Grafana.
- 2020 Polyhedra 9.6 : улучшения REST API, WebSocket Server и API IMDB.
- 2021 Polyhedra 9.7 : Кэширование BLOB-объектов API IMDB, поддержка нескольких баз данных.
Ссылки
[ редактировать ]- ↑ Перейти обратно: Перейти обратно: а б с Бесплатное программное обеспечение для системы реляционных баз данных в памяти Polyhedra® Lite уже доступно на Enea , пресс-релиз, EECatalog .
- ^ Enea анонсирует систему управления реляционными базами данных на основе Flash. Архивировано 17 мая 2008 г. на Wayback Machine.
- ^ Business Wire: Enea приобретает многогранники
- ^ thefreelibrary.com: Enea приобретает британскую компанию Polyhedra - укрепляет OSE с помощью технологии баз данных
- ^ Тим Кинг - Домашняя страница
- ^ Обработка данных временных рядов в Polyhedra IMDB , White Paper, Enea .
- ^ Александра Тешанович, Даг Нистрем, Йорген Ханссон, Кристер Норстрём: Встроенные базы данных для встроенных систем реального времени: компонентный подход (2002)
- ^ Бесплатная реляционная база данных реального времени для форума Raspi, Raspberry Pi .
- ^ Встроенная СУБД получила возможность блокировки и каскадного удаления , LinuxGizmos.com .
- ^ Enea AB: Enea защищает связь между сервером базы данных и клиентскими приложениями , Новости регулирования, Мировые новости SPi .