Разработчики: | Х-Технология |
Дата премьеры системы: | Декабрь 2006г. |
Дата последнего релиза: | Январь 2012г. |
Отрасли: | Информационные технологии |
Технологии: | СУБД |
Содержание |
UMS – система управления базами данных (СУБД), состоящая из среды исполнения серверных приложений и двигателя базы данных. Обладает расширеной реляционной моделью данных, где сущности представлены в виде денормализованных отношений, и физической структурой данных, представляющей собой набор ассоциативных массивов.
UMS обеспечивает параллельное выполнение OLTP и OLAP операций, устраняет фрагментацию данных, обеспечивает сериализуемый уровень изолированности транзакций и отсутствие логических блокировок в операциях чтения, записи и изменения данных, управляет составом метаданных в фоновом режиме.
UMS предназначена для применения в качестве ядра информационных систем.
UMS выполнена в клиент-серверной архитектуре.
В состав UMS входят веб-сервер, библиотека OpenSSL, шлюз протоколов передачи данных прикладного уровня, фронтальный и тыловой компиляторы языка D+, диспетчер программ. Двигатель базы данных выполнен в виде библиотеки функций определения и манипулирования данными.CIO девелопера Tekta Group Антон Солорев — о переходе с ERP Microsoft на «1С» и особенностях цифровизации в строительстве
Сервер СУБД
Архитектура ANSI-SPARC: Внутренний физический уровень включает мультисписки данных и матричные деревья поиска, промежуточный концептуальный уровень представлен абстракциями денормализованных отношений и реляционных связей, внешний пользовательский уровень реализован в виде схемы, состоящей из типов объектов, доменов, типов пользовательских данных (иерархий доменов) и словарей значений атрибутов доменов.
Соответствие требованиям ACID: Атомарность достигается присваиванием объектам уникальных номеров транзакций, согласованность поддерживается с помощью триггеров, изолированность обеспечивается предоставлением пользователям индивидуальных снимков базы данных и записью изменений данных в порядке поступления команд пользователей, долговечность обеспечивается синхронизацией записи атрибутов с записью изменений значений их дескрипторов. Изолированность транзакций поддерживается на сериализуемом уровне.
Физическая структура данных: Расширенная реляционная модель данных основана на денормализованных отношениях. Отношения хранятся в виде ассоциативных масивов кортежей данных. Каждый кортеж состоит из набора атрибутов, расположенных на разных уровнях иерархии. В качестве индексов используются упорядоченные перечни значений атрибутов, входящие в состав отдельных доменов. Перечни значений атрибутов разбиты на файловые блоки и связаны с инвертированными списками атрибутов. Поиск в индексах осуществляется дихотомическим методом. Полнота и непротиворечивость информации поддерживается без использования журнала транзакций и сегментов отката. Версионная архитектура: обеспечивает изменение или удаление данных в виде записи дочерних версий, дополняющих родительские; консолидация версий производится путем периодического сжатия базы данных в фоновом режиме. Многопользовательский доступ: Каждому читающему пользователю предоставляются актуализированные версии данных на момент начала чтения, каждому пишущему пользователю предоставляется свободный доступ на запись измененных данных без их блокировки. Запись информации: Данные записываются в потоковом режиме. Индексы записываются в режиме copy-on-write. Размер файла одного отношения ограничен 8 эксабайтами. Максимальная длина записи одного данного ограничена возможностями операционной системы. Серверное программирование: Триггеры, хранимые процедуры, пользовательские функции и представления программируются в виде отдельных модулей, компилируются в бит-код, сохраняются в базе данных в составе фрагментов неструктурированной информации и динамически загружаются на сервер баз данных.
Язык программирования
Встроенный язык программирования D+ общего назначения предназначен для создания, модификации, извлечения и управления данными, хранимыми в многомерной базе данных, программирования серверных приложений.
D+ имеет SQL-подобный синтаксис и состоит из совокупности операторов:
- операторы определения данных
- операторы манипуляции данными
- операторы переменных, условий, циклов, курсоров и исключений с поддержкой хранимых процедур.
D+ поддерживает процедурную, объектно-ориентированную, функциональную и логическую парадигмы программирования, имеет реляционное, регулярное и геометрическое расширения.
Встроенные типы данных D+ - Char, Varchar, Integer, Bigint, Smallint, Float, Double, Numeric, Decimal, Money, Boolean и Bit. Пользовательские типы данных создаются путем объявления в схеме базы данных иерархий доменов, соответствующих комбинированным данным – даты, времени, сетевого адреса узла компьютерной сети и т.п.
D+ использует кодировку данных в формате Unicode UTF-8.
Средство доступа
Драйвер LCD выполнен в виде библиотеки, включаемой в состав клиентских приложений. Поддерживает API на C++, взаимодействует с сервером UMS по TCP/IP, HTTP, DTP и SSL. LCD обеспечивает согласование схем приложения и базы данных, динамическое формирование запросов, поддержку HTML и XML.
Разработка и администрирование
Графический интерфейс администратора многомерной базы данных GAI - клиентское приложение, разработанное в среде Qt, включает конструктор схем баз данных, компоновщик запросов, генератор отчетов, интегрированную среду программирования на D+, драйвер LCD, модуль экспорта-импорта информации.
Расширения
UMS интегрируется с библиотеками, написанными на C/C++, в том числе с OpenSSL.
Аппаратно-программные платформы
UMS поддерживает 64-битные аппаратные платформы Intel, AMD, Sparc и POWER7 и операционные системы UNIX/Linux. LCD и GAI поддерживают 32/64-битные аппаратные платформы Intel и AMD и операционные системы UNIX/Linux и MS Windows.
Лицензирование
UMS распространяется под лицензией GNU LGPL.
История
- Первая версия UMS, основанная на списочной структуре данных и хеш-таблицах метаданных, была разработана в 2006 году.
- В 2008 году была выпущена вторая версия, поддерживающая структуру метаданных в виде матричных деревьев поиска, в 2009 году - третья версия, обеспечивающая интеграцию с встроенными библиотеками функций. С 2011 году проводится разработка четвертой версии с фронтальным и тыловым компиляторами в составе фреймворка UMS.
Подрядчики-лидеры по количеству проектов


















Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров
























Распределение систем по количеству проектов, не включая партнерские решения























