Научная статья на тему 'Унификация модели представления данных и преобразование форматов на основе нереляционной СУБД Neo4j'

Унификация модели представления данных и преобразование форматов на основе нереляционной СУБД Neo4j Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
104
25
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
модель данных / анализ данных / представление данных / база данных / data model / data analysis / data representation / database

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — А.П. Еремеев, Н.А. Панявин

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Unification of a data presentation model and format conversion based on a non-relational Neo4j DBMS

Nowadays, due to the digitalization concept, a lot of software tools have appeared, including those using artificial intelligence methods that process large data streams (big data) of varying degrees of complexity. Voice assistants, chat bots, search recommender systems not only use incoming up-to-date data, but also store and analyze changes in this data, the number of which is constantly growing. Under the conditions of a combinatorial explosion hazard, the multidimensional modeling problems, the efficient requests processing, and the necessary information extraction arise. This article presents the analysis of the possibility of increasing the efficiency of multidimensional OLAP modeling and temporal data extraction based on built-in software components offered by the non-relational DBMS Neo4j. The choice of a graph DBMS is due to the absence of the need to strictly fix the data structure at the initial stage, as well as on the flexibility of the data presentation structure itself, which can change as new information becomes available. Making changes to strict prefixed relational table views is an expensive operation. The typical way to store temporal data (time moments and intervals) is to store timestamps as node attributes. At the same time, this option for storing and handling events may not be effective enough in the case of a large dimension of the data representation. The experimental results have shown that the graph of a multidimensional data cube can be projected onto the coordinate axes in the form of separate temporal slices, where the abscissa axis displays the event start time, and the ordinate axis displays its end time. Additional axes, if necessary, can be introduced to determine the cause-effect relationship of processes occurring simultaneously in time. At the same time, the rules of Allen's temporal logic will be supported. The paper considers the possibility of unifying the representation model of the internal data structure of varying complexity based on graphs.

Текст научной работы на тему «Унификация модели представления данных и преобразование форматов на основе нереляционной СУБД Neo4j»

УДК 004.89 Дата подачи статьи: 25.08.22

DOI: 10.15827/0236-235X.140.549-556 2022. Т. 35. № 4. С. 549-556

Унификация модели представления даннъх и преобразование форматов на основе нереляционной СУБД Neo4j

А.П. Еремеев 1, д.т.н, профессор, eremeev@appmat.ru Н.А. Панявин 1, аспирант, paniavinna@mpei.com

1 Национальный исследовательский университет

«Московский энергетический институт,», г. Москва, 111250, Россия

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

В статье проводится анализ возможности повышения эффективности многомерного OLAP-модели-рования и извлечения темпоральных данных на основе программных компонентов с применением нереляционной СУБД Neo4j. Выбор графовой СУБД основан на отсутствии необходимости строго фиксировать структуру данных на начальном этапе, а также на гибкости самой структуры представления данных, которая может меняться по мере поступления новой информации, в то время как внесение изменений в строгие, заранее фиксированные табличные представления в реляционных СУБД является достаточно дорогостоящей операцией.

Классическим способом хранения темпоральных данных (временных моментов и интервалов) является хранение временных меток в качестве атрибутов узлов графа. В то же время данный вариант хранения и оперирования событиями может оказаться недостаточно эффективным в случае большой размерности представления данных.

Экспериментальные результаты показали, что граф многомерного куба данных может быть спроецирован на оси координат в виде отдельных темпоральных срезов, где ось абсцисс будет отображать время начала события, а ось ординат время его окончания. Дополнительные оси при необходимости могут вводиться для определения причинно-следственной взаимосвязи процессов, параллельно происходящих во времени. При этом будут поддерживаться правила темпоральной логики Аллена. Рассматривается возможность унификации модели представления внутренней структуры данных различной сложности на основе графов.

Ключевые слова: модель данных, анализ данных, представление данных, база данных.

Важной частью любой информационной системы, в том числе системы искусственного интеллекта (интеллектуальной системы), является подсистема, отвечающая за хранение и обработку данных, включая динамические. В условиях реального времени потребность в оперативном доступе к актуальным данным возрастает. Для организации своевременного и эффективного извлечения данных применяются различные форматы, модели и методы организации хранения и обработки данных. В качестве хранилища могут использоваться как простые текстовые файлы, содержащие классические наборы пар вида (<ключ (параметр)>, <значение>), так и структурированные. Могут

использоваться различные виды СУБД со своими моделями представления данных.

Реляционные СУБД используют табличную модель структурного представления данных. В класс нереляционных СУБД входят модели представления данных с отличными от реляционных возможностями. Например, документная иерархическая форма хранения позволяет сразу получить всю нужную информацию об объекте в целом, а для реляционной модели необходимо сделать, как минимум, несколько запросов, чтобы собрать все данные из различных таблиц в требуемый формат. Графовые модели хранят в себе полную картину взаимосвязи различных сущностей и позволяют опе-

ративно извлекать запрашиваемую информацию. Скорость доступа обеспечивается за счет хранения не только узлов, но и отношений между ними, которые не вычисляются, как в реляционных моделях. В то же время это приводит к разрастанию БД на дисковом пространстве, что не всегда подходит для систем реального времени (РВ) (например, в случае интеллектуальных систем (ИС) РВ типа систем поддержки принятия решений) [1, 2].

По мере развития обеих технологий хранения и оперирования данными появляются различные типы данных: строковые, целые, вещественные, логические, а также дата и время и другие, которые облегчают организацию представления и структурирования информации.

Реляционные и нереляционные подходы к организации структурированных данных появились практически одновременно. Отсутствие единых подходов к организации хранения данных обусловило развитие различных конкурирующих моделей представления данных (информации), каждая из которых может быть успешно применена в конкретной предметной области.

Отдельная задача связана с широко используемыми иерархическими данными. В случае использования БД реляционного типа хранение структуры вида <родитель>,<наследник> в отдельных таблицах приводит к расходованию дополнительной памяти и увеличению нагрузки на ядро СУБД при работе с такими данными. К меньшим затратам ресурсов может привести организация хранения родителей и наследников в единой таблице с выделением отдельных полей-идентификаторов для указания связи. В случае применения нереляционных моделей иерархические структуры в виде JSON-документов или графов для решения поставленной задачи будут более простыми и наглядными.

Новым и активно развиваемым в настоящее время подходом к хранению структурированной информации, особенно применительно к ИС РВ, является смешанный (гетерогенный) способ хранения данных. Данный способ применяется в мультимодельных СУБД, примерами которых могут служить как реляционная СУБД MS SQL Server, поддерживающая табличные и в определенной степени графовые модели данных, так и нереляционые СУБД TigerGraph и Neo4j, оперирующие графовыми и документными структурами данных [3, 4].

В связи с этим возникает задача унификации модели представления данных и разработки

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

Построение графовой темпоральной модели данных

Модели для представления (хранения) и обработки темпоральных данных, основанных на РВ, можно разделить на три категории: темпоральные модели с меткой длительности, темпоральные модели на основе моментальных снимков и темпоральные модели на основе интервалов. В ИС РВ во время работы фиксируются и анализируются не только интервальные, но и моментальные события. Причем метка времени является атрибутом каждого события.

Предлагается графовая модель представления данных, включающая в себя сущности и временные (темпоральные) отношения в виде узлов графовой БД [1, 5]. Данная модель может быть использована для представления как мгновенных (моментных), так и интервальных событий (отличие интервальных событий от мгновенных заключается в наличии времени начала и времени окончания, то есть длительности; мгновенное событие можно интерпретировать как интервал нулевой длительности с совпадающими временами начала и конца).

С развитием вычислительных систем и технологий конструирования ИС и ИС РВ темпоральные данные стали неотъемлемой частью большинства реальных задач для различных предметных/проблемных областей: образование, здравоохранение и медицина, природные явления, управление техническими и организационными системами и т.д.

Приведем некоторые примеры темпоральных запросов (запросов к темпоральным данным):

- в каком учебном заведении учился абитуриент до подачи заявления в аспирантуру НИУ «МЭИ» в 2022 году?

- какие заболевания за последнее время перенес пациент до текущего визита к врачу?

- какими природными явлениями сопровождалось горение торфяников в 2010 году?

- какие нештатные ситуации и в какое время произошли на объекте до его выхода из строя?

Графовые БД (и соответствующие СУБД) становятся все более популярными для различ-

ных видов приложений, таких как социальные сети (ВКонтакте, FaceBook, Twitter), хранение и анализ сетевых данных (например, онтологические модели, многомерные кубы данных OLAP) [6]. Построение графовой БД основано на формальных свойствах графов. В графовой БД сущности-объекты данных представляются в виде узлов. Взаимосвязь между ними обеспечивается переходами-ребрами. Как узлы, так и ребра могут иметь свои уникальные свойства или атрибуты, содержащие их характеристики (рис. 1). Благодаря этим свойствам графовые БД могут поддерживать темпоральные данные.

При построении графа на плоскости используются понятия смежности и инцидентности. В OLAP-структуре пространственные данные (гиперкубы данных) представляются как пространственные ^-мерные объекты, состоящие из точек, линий, областей, срезов, поверхностей и объемов данных более высоких измерений. Относительно организации извлечения данных в подобных структурах заметим, что в отличие от структур данных поиска по одному ключу пространственные структуры спроектированы таким образом, чтобы обеспечить высокую производительность. Примером многомерного темпорального запроса может служить запрос на поиск университета поближе к дому абитуриента как с точки зрения расстояния, так и времени в пути [5, 6].

Для решения подобных задач большинство доступных представлений точечных данных являются вариантами метода разбиения на блоки, который применим на структурах данных, основанных на пространственном представлении [7]. В процессе обработки данных пространственное представление включает в

себя разбиение пространства, из которого извлекаются данные, на области, называемые сегментами. Возникает задача масштабирования с целью адекватного разбиения. Одним из вариантов является разбиение всей области на фрагменты фиксированного размера, разбиение объектов, попадающих на стыки областей, присвоение каждому объекту индекса квадрата, в который он попал. Далее выполняются сортировка исходных данных и извлечение нужных объектов. Данный вариант не является эффективным для ИС РВ, так как, во-первых, необходима привязка к определенному уровню масштаба разделения, а, во-вторых, из-за существенного перебора уже на этапе разбиения есть вероятность возникновения комбинаторного взрыва. Альтернативным вариантом может служить подход с использованием графов (деревьев): Я- и К+ деревьев [8, 9]. Такие древовидные структуры используются для организации наборов произвольных пространственных объектов и обладают лучшей масштабируемостью. Каждый из объектов узла дерева выделяется при этом в отдельный ограниченный прямоугольник. Эффективность соответствующих алгоритмов извлечения данных достигается за счет минимизации пустого пространства между объектами, а также площади перекрытия областей узлов (на примере Я-дерева, рис. 2) [8, 9].

Темпоральная графовая модель на основе декартовой логики

Простой граф G(V, Е) по определению является совокупностью двух множеств - непу-

Рис. 2. Пример структуры R-дерева Fig. 2. An example of the R-tree structure

Рис. 1. Пример внутренней структуры узла графа с темпоральным атрибутом

Fig. 1. An example of the graph node internal structure with a temporal attribute

стого множества вершин V и множества (может быть и пустым) ребер Е - упорядоченных или неупорядоченных пар элементов множества Vx V. Граф G может быть расширен до темпорального Gt(V, Е, Т*) с помощью введения темпорального дополнения Т*, включающего в себя временные (темпоральные) метки как узлов у^) е V, так и ребер е(() е Е, te Т* [5].

В классическом (одномерном) представлении темпоральный интервал характеризует событие с точки зрения его длительности, которая является частью временной оси. В многомерном представлении темпоральный интервал может быть в виде некоторой ограниченной ^-мерной области, в пределах которой происходило событие (рис. 3). В трехмерном случае, например, этой областью может служить параллелепипед. Области событий могут быть полностью вложенными, частично пересекаться или находиться в некоторой близкой области (в контексте отношений интервальной логики Аллена).

У

tl' t2'

tl t2 t3 X

Рис. 3. Графическое представление темпорального среза

Fig. 3. Temporal slice representation

На данном темпоральном двумерном срезе ось абсцисс отображает время начала события, а ось ординат - время его окончания. В общем случае в выделенную в данном случае треугольную область попадут все события, происходящие с исследуемым объектом на интервале [t1, t1']. Так как значение атрибута времени начала события по умолчанию не превышает значение атрибута времени его окончания, на графике можно выделить диагональ как отдельную область, куда будут попадать только точечные (моментальные) события, в которых время начала и конца совпадает. Полное представление отдельного процесса в качестве кортежа событий, происходивших в разные промежутки

(интервалы, в том числе и нечеткие) времени, позволит выявить, какие события шли последовательно друг за другом, происходили одновременно (параллельно), были завершены в один и тот же момент времени и т.д. [1, 4].

Обработку древовидного графа предлагается выполнять с помощью следующего алгоритма:

Пока текущий узел у(/) 6 V не является конечным.

Определить соседние узлы у*(/):

Если значения уа1(у*(/)) е области поиска S: Добавить у*(() к результатам поиска Иначе:

Расширить области у*(0 и выбрать минимально удаленный узел с минимальным расширением области до пересечения.

В качестве примера к рисунку 3 можно привести абстрактного студента, который в промежуток времени ^1, обучался в вузе и на зачетной неделе в некоторый день смог сдать два зачета по разным дисциплинам соответственно на интервалах ^2, t2'] и ^3, t3']. Заметим, что верхние границы событий t2' и t3' совпадают, так как учебный день (и время приема зачетов) ограничен.

Отметим также, что расширение данной (бинарной) модели позволяет исследовать комплексно ситуацию получения зачетов не только этим студентом, но и в учебной группе или на курсе в целом. Можно формировать и более сложные запросы, например, «Какие студенты обучались в период с 2018 г. по 2021 г.?» или «Какие студенты и по каким дисциплинам получили зачеты с отставанием от учебного графика?» и т.п.

Построение темпоральной БД и анализ запросов

Для организации тестирования темпоральной БД были смоделированы четыре выборки, представляющие учебный процесс в рамках некоторого университета. Выборки содержали информацию о 1 000, 2 000, 5 000, 10 000 студентов разных курсов, обучавшихся на различных учебных направлениях, по 150 дисциплинам в совокупности. В качестве темпоральных атрибутов были выбраны события, характеризующие процесс обучения в целом, а также атрибуты, характеризующие освоение учебного графика для каждого отдельного студента. Временной интервал событий был ограничен четырьмя годами.

При оценке эффективности обработки темпоральных данных (формата дат) дополнительно использована функция datetime [9, 10].

Таблица 1 иллюстрирует запросы, извлекающие информацию о тех студентах, которые закончили университет до 25 мая 2022 г.

Таблица 1

Пример сравнения темпоральных запросов

Table 1

An example of temporal query comparison

На рисунке 4 представлен фрагмент результата выполнения запросов в программной среде Neo4j Desktop. Отметим, что Neo4j позволяет автоматически выводить не только отдельные узлы сущностей, но и связи между ними.

По данному примеру можно также сделать вывод, что студенты Andrey и Sergey были знакомы (связаны друг с другом) и во время учебы. А построенная темпоральная модель позволяет не только получать отдельные сущности/события (узлы) графа, но и выявлять зависимости между ними. В числе важных критериев качества выполнения запроса полный и всесторонний анализ данных и выявление зависимостей.

Таблица 2 демонстрирует пример запроса интервала. В качестве примера (рис. 5) были запрошены студенты, которые обучались в период с 2018 по 2020 гг. и получили зачет по информатике вовремя.

Таблица 2

Пример сравнения темпоральных запросов интервалов

Table 2

An example of comparing temporal interval queries

Запрос в обычном Запрос к многомерной

виде модели

MATCH (st:Students, MATCH (st:Students,

e:exam) e:exam)

WHERE WHERE

(st) - [:Passed]->(e) (st) - [:Passed]->(e)

AND AND

st.study_time >= st.study_time >= my-

datetime('2018-09- point({x:20180901,

01T0:0') y:20180901}) AND

AND st.study_time <= st.study_time <= my-

datetime('2020-07- point({x:20200707.2359,

07T23:59') AND y:20200707.2359}) AND

where e.name = 'infor- where e.name = 'infor-

matics' matics'

MATCH (pd:pass_dates) MATCH (pd:pass_dates)

WHERE WHERE

(e)-[:At]->(pd) AND (e)-[:At]->(pd) AND

pd.dat = e.dat pd.dat = e.dat

RETURN st RETURN st

Система Neo4j Desktop позволяет не только использовать встроенные средства СУБД, но и проектировать свои дополнительные программные расширения и процедуры.

Рис. 5. Пример сравнения темпоральных запросов интервалов

Fig. 5. An example of comparing Temporal interval queries

Оценка эффективности построенной модели представлена на рисунке 6.

Эффективность разработанного алгоритма обхода графа (Я-дерева) оценивается величиной O(log(n)), а алгоритм расширения области имеет линейную оценку Алгоритм позволяет минимизировать пространство поиска и не обрабатывать поддеревья из соседних вершин графа, а также выявлять наиболее близкие по времени сущности (события).

Запрос в обычном виде Запрос к многомерной модели

Match (st:Students) Where st.study time < datetime('2022-05-25T0:0') Return st Match (st:Students) Where st.study_time < mypoint({x:20220525, y:20220515}) Return st

Рис. 4. Пример сравнения темпоральных запросов

Fig. 4. A temporal query comparison example

Э 2000 5000 10000

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Количество узлов ■Standart Query - — — — -Model query

Рис. 6. Зависимость времени выполнения запроса от размера выборки

Fig. 6. A dependence of query execution time on sample size

Заключение

В статье рассмотрена проблема хранения и эффективной организации доступа к большим

объемам данных. С целью повышения масштабируемости многомерная темпоральная OLAP-структура была представлена моделью в виде древовидного графа - темпорального Л-дерева на основе темпоральной модели с бинарной системой координат. Предложен алгоритм обработки данных на основе этой модели. Сравнительный анализ показал повышение эффективности обработки данных с применением разработанного алгоритма в 1,5-2 раза по сравнению с базовой структурой (моделью) представления и обработки древовидных данных в СУБД Neo4j.

В дальнейшем планируется распространение возможностей модели и соответствующих алгоритмов на более сложные темпоральные структуры (в частности, при наличии нечеткости или вероятностной неопределенности в темпоральных зависимостях) с целью включения соответствующих методов (моделей) и программных средств в перспективные ИС РВ.

Работа выполнена при финансовой поддержке РФФИ (проект № 20-07-00498 А).

Литература

1. Еремеев А.П., Панявин Н.А. О реализации нечеткой темпоральной модели данных на основе нереляционной базы данных // Тр. конгресса по интеллектуальным системам и информационным технологиям «IS&IT-2021». 2021. С. 261-269.

2. Eremeev A.P., Poliushkin I.A., Paniavin N.A., Sergeev M.D., Petrov V.S., Marenkov M.A. Prototype of intelligent real-time decision support system based on anytime algorithms and NO-SQL database. Proc. III Int. Youth Conf. REEPE, 2021, рр. 1-6. DOI: 10.1109/REEPE51337.2021.9388053.

3. Azzini A., Ceravolo P., Colella M. Performances of OLAP operations in graph and relational databases. Proc. Int. Conf. KMO, 2019, pp. 282-293.

4. Еремеев А.П., Еремеев А.А. Реализация темпоральной базы данных для интеллектуальных систем реального времени // Тр. конгресса по интеллектуальным системам и информационным технологиям "IS&IT' 17". 2017. Т. 1. С. 205-212.

5. Debrouvier A., Parodi E., Perazzo M., Soliani V., Vaisman A. A model and query language for temporal graph databases. The VLDB J., 2021, vol. 30, no. 5, pp. 825-858. DOI: 10.1007/s00778-021-00675-4.

6. Needham M., Hodler A.E. Graph Algorithms: Practical Examples in Apache Spark and Neo4j. CA, O'Reilly Media Publ., 2019, 239 p.

7. Lerer A., Wu L., Shen J. et al. Pytorch-biggraph: A large scale graph embedding system. Proc. II SysML Conf., ArXiv, 2019, pp. 1-12. URL: https://arxiv.org/pdf/1903.12287.pdf (дата обращения: 10.08.2022).

8. Doraiswamy H., Vo H.T., Silva C.T., Freire J. A GPU-based index to support interactive spatio-temporal queries over historical data. Proc. IEEE XXXII ICDE, 2016, pp. 1086-1097. DOI: 10.1109/ICDE.2016. 7498315.

9. Nathan V., Ding J., Alizadeh M., Kraska T. Learning multi-dimensional indexes. Proc. ACM SIGMOD Int. Conf. on Management of Data, 2020, pp. 985-1000.

10. Baton J., Van Bruggen R. Learning Neo4j 3. x: Effective Data Modeling, Performance Tuning and Data Visualization Techniques in Neo4j. Packt Publishing Ltd, 2017, 316 p.

Software & Systems

DOI: 10.15827/0236-235X.140.549-556

Received 25.08.22 2022, vol. 35, no. 4, pp. 549-556

Unification of a data presentation model and format conversion based on a non-relational Neo4j DBMS

A.P. Eremeev 1, Dr.Sc.(Engineering), Professor, eremeev@appmat.ru N.A. Paniavin 1, Postgraduate Student, paniavinna@mpei.ru

1 National Research University "MPEI", Moscow, 111250, Russian Federation

Abstract. Nowadays, due to the digitalization concept, a lot of software tools have appeared, including those using artificial intelligence methods that process large data streams (big data) of varying degrees of complexity. Voice assistants, chat bots, search recommender systems not only use incoming up-to-date data, but also store and analyze changes in this data, the number of which is constantly growing. Under the conditions of a combinatorial explosion hazard, the multidimensional modeling problems, the efficient requests processing, and the necessary information extraction arise.

This article presents the analysis of the possibility of increasing the efficiency of multidimensional OLAP modeling and temporal data extraction based on built-in software components offered by the non-relational DBMS Neo4j. The choice of a graph DBMS is due to the absence of the need to strictly fix the data structure at the initial stage, as well as on the flexibility of the data presentation structure itself, which can change as new information becomes available. Making changes to strict prefixed relational table views is an expensive operation.

The typical way to store temporal data (time moments and intervals) is to store timestamps as node attributes. At the same time, this option for storing and handling events may not be effective enough in the case of a large dimension of the data representation.

The experimental results have shown that the graph of a multidimensional data cube can be projected onto the coordinate axes in the form of separate temporal slices, where the abscissa axis displays the event start time, and the ordinate axis displays its end time. Additional axes, if necessary, can be introduced to determine the cause-effect relationship of processes occurring simultaneously in time. At the same time, the rules of Allen's temporal logic will be supported.

The paper considers the possibility of unifying the representation model of the internal data structure of varying complexity based on graphs.

Keywords: data model, data analysis, data representation, database.

Acknowledgements. This work has been financially supported by RFBR (project no. 20-07-00498 A).

1. Eremeev A.P., Paniavin N.A. On the implementation of a fuzzy temporal data model based on a nonrelational database. Proc. Congress IS&IT21, 2021, pp. 261-269 (in Russ.).

2. Eremeev A.P., Poliushkin I.A., Paniavin N.A., Sergeev M.D., Petrov V.S., Marenkov M.A. Prototype of intelligent real-time decision support system based on anytime algorithms and NO-SQL database. Proc. III Int. Youth Conf. REEPE, 2021, pp. 1-6. DOI: 10.1109/REEPE51337.2021.9388053.

3. Azzini A., Ceravolo P., Colella M. Performances of OLAP operations in graph and relational databases. Proc. Int. Conf. KMO, 2019, pp. 282-293.

4. Eremeev A.P., Eremeev A.A. Implementation of a temporal database for intelligent real-time systems. Proc. Congress IS&IT'17, 2017, vol. 1, pp. 205-212 (in Russ.).

5. Debrouvier A., Parodi E., Perazzo M., Soliani V., Vaisman A. A model and query language for temporal graph databases. The VLDB J., 2021, vol. 30, no. 5, pp. 825-858. DOI: 10.1007/s00778-021-00675-4.

6. Needham M., Hodler A.E. Graph Algorithms: Practical Examples in Apache Spark and Neo4j. CA, O'Reilly Media Publ., 2019, 239 p.

7. Lerer A., Wu L., Shen J. et al. Pytorch-biggraph: A large scale graph embedding system. Proc. IISysML Conf., ArXiv, 2019, pp. 1-12. Available at: https://arxiv.org/pdf/1903.12287.pdf (accessed August 10, 2022).

8. Doraiswamy H., Vo H.T., Silva C.T., Freire J. A GPU-based index to support interactive spatio-temporal queries over historical data. Proc. IEEEXXXIIICDE, 2016, pp. 1086-1097. DOI: 10.1109/ICDE.2016. 7498315.

References

9. Nathan V., Ding J., Alizadeh M., Kraska T. Learning multi-dimensional indexes. Proc. ACMSIGMOD Int. Conf. on Management of Data, 2020, pp. 985-1000.

10. Baton J., Van Bruggen R. Learning Neo4j 3. x: Effective Data Modeling, Performance Tuning and Data Visualization Techniques in Neo4j. Packt Publishing Ltd, 2017, 316 p.

Для цитирования

Еремеев А.П., Панявин Н.А. Унификация модели представления данных и преобразование форматов на основе нереляционной СУБД Neo4j // Программные продукты и системы. 2022. Т. 35. № 4. С. 549-556. DOI: 10.15827/0236-235X.140.549-556.

For citation

Eremeev A.P., Paniavin N.A. Unification of a data presentation model and format conversion based on a non-relational Neo4j DBMS. Software & Systems, 2022, vol. 35, no. 4, pp. 549-556 (in Russ.). DOI: 10.15827/023bI6-235X.140.549-556.

i Надоели баннеры? Вы всегда можете отключить рекламу.