Применение технологической платформы ODANT для получения оперативной информации

Применение технологической платформы ODANT для получения оперативной информации

В современном мире уровень информатизации очень высок, поэтому необходимо иметь возможность быстро получать и обрабатывать разного рода информацию. В различных сферах деятельности информация воспринимается и учитывается по-разному, из-за чего необходимо гибко подходить к разработке программного обеспечения. Одним из вариантов является платформа ODANT – система, нацеленная на получение оперативной информации, гибкая в сфере разработки и сопровождения. А что самое главное – технология ODANT является отечественной разработкой, она разрабатывается и сопровождается на территории Российской Федерации, что даёт ей преимущество перед иностранными конкурентами в рамках задачи импортозамещения.

В статье рассмотрена структура ядра системы ODANT, интерфейс среды, его назначение и практическое применение. Проведена работа с СУБД ODANT – одной из частей платформы, создана база данных по реляционной модели, описаны возможности манипулирования данными в базе. Рассмотрены запросы на выборку к СУБД, приведён пример представления результата в разных форматах. Поэтапно описана структура внедрения сети ODANT в системы крупных организаций, описаны возможности разработки и эксплуатации ODANT в системах производственных организаций.

Аннотация статьи
технология
программный комплекс
информационная система
программное обеспечение
Ключевые слова

Существует задача перехода от иностранного программного обеспечения к отечественным аналогам, особенно остро эта проблема поднимается в последнее время [1]. Одним из вариантов решения является технология ODANT [2]. ODANT – технологическая платформа для создания распределённых информационных систем, нацеленная на их максимально эффективную разработку, поддержку и эксплуатацию.

Архитектура ядра ODANT. Программный комплекс ODANT PLATFORM включает в себя:

  • объектно-файловую СУБД ODANT;
  • средства разработки ODANT FRAMEWORK и ODANET – операционная сеть, поверх сети интернет [3].

Ядро ODANT состоит из пяти слоёв (рис. 1). Первый из них – хранилище. Здесь данные хранятся в объектах классов в бинарном XML-подобном формате. Второй слой – вычислительный, состоит из двух частей: In-memory tree engine обеспечивает загрузку и выгрузку данных и работу с ними, секция Node.js предназначена для исполнения серверных методов. Слой безопасности отвечает за работу политик и управление учётными записями. Маршрутизатор обеспечивает работу иерархической сети серверов, позволяет любой сущности при наличии соответствующих прав работать с любой другой вне зависимости от её физического расположения. Блокчейн хранит учётные записи пользователей, серверов, баз данных и методов. Внешние интерфейсы используются в общении систем на платформе ODANT и при интеграции со сторонними решениями.

Рис. 1. Архитектура ядра ODANT

Интерфейс среды ODANТ. Разработчиками ODANT подразумевалось, что среда может использоваться не только профессиональными программистами, но и бизнес-аналитиками, бухгалтерами и другими людьми с более низким уровнем подготовки, а администратору необходимо всего лишь ограничить права доступа для каждого из работников. Поэтому все манипуляции с данными можно совершать при помощи интерфейса среды (рис. 2), который достаточно прост и интуитивно понятен. Благодаря этому, задача обучения новых кадров для работы с данной средой значительно упрощается.

Рис. 2. Часть интерфейса среды ODANТ для манипуляции с экземплярами класса

 Реализация модели предметной области. В качестве примера на СУБД ODANT реализуется модель «Биллинг коммунальных ресурсов и жилищных услуг». Физическая модель реляционной базы данных (РБД) показана на рис. 3 [4].

Рис. 3. Физическая модель РБД «Биллинг коммунальных ресурсов и жилищных услуг»

Так как СУБД ODANT является объектно-ориентированной, то все 8 таблиц реляционной модели реализованы в виде независимых классов с соответствующими полями. Каждый класс наполнен некоторым количеством экземпляров (рис. 4). Ссылочная целостность соблюдена средствами ODANT по настройке типов данных. В качестве типа данных можно указать ссылку на уже существующее поле другого класса.

Рис. 4. Реализованная модель базы данных средствами ODANT

Запросы в СУБД ODANTЗапросы к базам данных в ODANT реализуются с помощью языка XQuery. XQuery — язык запросов и функциональный язык программирования, разработанный для обработки данных в формате XML, простого текста, JSON или других предметно-специфичных форматах [5]. В общем виде синтаксис XQuery запроса на выборку можно представить следующим образом [6]:

for $x in doc("file.xml")/objects/object (: секция выбора :)

where $x/filedNum>30 (: секция условия :)

order by $x/filedString (: секция сортировки :)

return $x/fieldString (: секция возврата :)

Например, запрос на выборку номеров лицевых счетов (AccountCD) всех экземпляров класса Abonent может выглядеть так:

for $a in //PACK/OBJECT

let $nm := $a/(if (@key != '') then @key else (@AccountCD))

order by $nm

return element V {

     attribute AccountCD {$nm },

     $a/parent

}

Полученные данные в результате выполнения запроса на выборку ODANT позволяет возвращать в различных форматах. На рис. 5, а представлен пример результата запроса в виде XML-файла, а на рис. 5, б – в виде таблицы. Переключение между способами представления данных осуществляется с помощью интерфейса среды, вносить изменения в сам запрос не требуется.

а

б

Рис. 5. Результаты запроса в различных форматах

Внедрение ODANT в системы крупных организаций. Структура крупной организации представляется большим количеством разнородных систем, что создаёт большое количество проблем при попытке взаимодействия их друг с другом. На первом этапе интеграции создаётся сеть серверов ODANT с чёткой иерархией, дублирующей структуру организации, и настраиваются коннекторы для обмена данными (рис. 6). После синхронизации обмен данными между системами осуществляется через коннекторы и шину ODANT. На этом этапе бизнес-логика ещё не импортирована в систему ODANT, но уже имеется возможность получать отчёты через новую сеть. Далее, по мере работы, всё большее количество задач решается через ODANT, пока необходимость в старой системе полностью не исчезнет.

Рис. 6. Внедрение технологии ODANT в информационную систему крупной организации

СУБД ODANT является объектно-ориентированной, а это значит, что ODANT представляет сущности в виде классов. Это даёт ряд преимуществ. Во-первых, из-за того, что на серверной части системы данные и так реализованы в объектно-ориентированном формате (такими объектно-ориентированными языками программирования как C++, C#, Java и др.), то необходимость в неуклюжих ORM-преобразованиях исчезает, что увеличивает потенциальную производительность, снижая pecypcoзaтpaтность системы. Во-вторых, не требуется выделения отдельного хранилища баз данных т.к. хранилище ODANT является частью ядра. В-третьих, объектно-ориентированное хранение данных позволяет более гибко представлять данные пользователю, не только в виде таблиц, но и в виде XML-файла, массива, иерархического дерева и др.

ODANT в разработке и эксплуатации. ODANT – полноценная система, нацеленная на получение оперативной информации. Преимуществом при эксплуатации и разработке системы с ODANT является тот факт, что для работы с СУБД не нужно создавать или использовать сторонние клиентские приложения. Среда ODANT позволяет полностью работать с данными как со стороны клиента, так и со стороны сервера. В рамках производственной организации разработчики имеют более широкий доступ к среде и данным. Работникам, чьей задачей не является разработка, имеется возможность ограничить права доступа. Для этой цели в ODANT предусмотрена полноценная система безопасности пользователей, ролей и логов (рис. 7).

Рис. 7. Политика безопасности

ODANT выглядит перспективной отечественной разработкой, которая обладает большим потенциалом реализации в различных сферах, особенно в рамках задачи импортозамещения. На данный момент платформа ODANT активно развивается и внедряется в различные области. Технология ODANТ – большой шаг вперёд отечественной разработки программного обеспечения.

Текст статьи
  1. Постановление Правительства РФ от 16.11.2015 N 1236 «Об установлении запрета на допуск программного обеспечения, происходящего из иностранных государств, для целей осуществления закупок для обеспечения государственных и муниципальных нужд» // https://d-russia.ru/wp-content/uploads/2015/11/ac872y0wqioFnrRUeTnpGjEavWCfgEAo.pdf
  2. Реестр программного обеспечения Российской Федерации. СУБД Платформа ODANT [Электронный ресурс]. URL: https://reestr.digital.gov.ru/reestr/304855/?sphrase_id=287984
  3. Перепелкин Р.А., Чумаков Г.В., Витухин В.В., Марочкин М.В., Трофимов И.М. ODANT – интернет нового поколения // Проектирование будущего. Проблемы цифровой реальности: труды 2-й Международной конференции (7-8 февраля 2019 г., Москва). — М.: ИПМ им. М.В.Келдыша, 2019. — С. 112-117. — URL: https://keldysh.ru/future/2019/11.pdf
  4. Маркин А.В. Программирование на SQL в 2 ч. Часть 1: учебник и практикум для бакалавриата и магистратуры – М.: Издательство Юрайт, 2019. 403с. – Серия: Бакалавр и магистр. Академический курс.
  5. W3C // Всемирная организация по разработке веб-стандартов. XQuery [Электронный ресурс]. URL: https://www.w3.org/TR/xquery/ (дата обращения 08.05.2021).
  6. W3Schools. XQuery Tutorial. [Электронный ресурс]. URL: https://www.w3schools.com/xml/xquery_intro.asp (дата обращения 08.05.2021).
Список литературы
Ведется прием статей
Размещение электронной версии журнала
22 июня
Загрузка в eLibrary
22 июня
Рассылка печатных экземпляров
30 июня