Типы NoSQL: графовая база данных
Хранилище на основе графов — это сетевая NoSQL БД, использующая для отображения и хранения данных узлы и ребра. В ней вы не найдете строгого SQL-формата либо представления таблиц и колонок — вместо этого применяется гибкое графическое представление, прекрасно подходящее для решения проблем с масштабируемостью.
Графовые структуры применяются совместно с ребрами, узлами и свойствами — таким образом обеспечивается безиндексная смежность. В случае применения графового хранилища вы сможете легко преобразовать данные из одной модели в другую.
Итак, особенности: • такие БД используют для представления данных узлы и ребра; • между собой узлы связаны определенным отношениями, которые представлены ребрами; • узлы и отношения характеризуются рядом свойств.
На картинке ниже — контейнерная иерархия документоориентированной БД. Данные содержатся без схемы, причем данные можно представить в виде дерева, являющегося графом. Обращаясь к документам либо к их элементам в дереве, вы сможете получить более выразительное представление данных, а ориентироваться в этом представлении можно относительно легко, если использовать Neo4j.
Ниже описаны особенности графовой БД на основе примера:
Граф включает в себя узлы, помеченные некоторыми свойствами, причем узлы обладают связями друг с другом (связи представлены направленными ребрами). К примеру, связь «Alice -> Bob» выражается ребром с определенными свойствами. Хоть реляционные БД и способны копировать поведение графовых баз, ребрам понадобится соединение JOIN, что дорого обойдется.
Как это используется на практике?
Вспомните любой из рейтингов «Рекомендовано вам», которые есть на многих сайтах. Как правило, они формируются на основании оценки продукта пользователем. Как раз для такого случая и подходят графовые базы данных.
По материалам https://tproger.ru/translations/types-of-nosql-db/.