Найти в Дзене

Типы NoSQL: графовая база данных

В разработке часто задействовано несколько нереляционных баз данных. Самые популярные и полезные — Cassandra, MongoDB, Redis, ClickHouse, Tarantool, Kafka, Neo4j, RabbitMQ. Хотите научиться выбирать правильную технологию и использовать весь потенциал NoSQL?
8 сентября пройдет встреча с Евгением Аристовым, экспертом с 20-летним стажем в разработке ПО, в т.ч. с опытом работы с разными СУБД.
Евгений расскажет о ключевых навыках, от которых зависит эффективность использования NoSQL, и познакомит с программой онлайн-курса по нереляционным базам и преподавательским составом OTUS. ***** Хранилище на основе графов — это сетевая NoSQL БД, использующая для отображения и хранения данных узлы и ребра. В ней вы не найдете строгого SQL-формата либо представления таблиц и колонок — вместо этого применяется гибкое графическое представление, прекрасно подходящее для решения проблем с масштабируемостью. Пример соответствующей СУБД — Neo4J. Графовые структуры применяются совместно с ребрами, узлами и сво

В разработке часто задействовано несколько нереляционных баз данных. Самые популярные и полезные — Cassandra, MongoDB, Redis, ClickHouse, Tarantool, Kafka, Neo4j, RabbitMQ. Хотите научиться выбирать правильную технологию и использовать весь потенциал NoSQL?
8 сентября пройдет встреча с Евгением Аристовым, экспертом с 20-летним стажем в разработке ПО, в т.ч. с опытом работы с разными СУБД.
Евгений расскажет о ключевых навыках, от которых зависит эффективность использования NoSQL, и познакомит с программой онлайн-курса по нереляционным базам и преподавательским составом OTUS.

*****

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

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

-2

Итак, особенности:

• такие БД используют для представления данных узлы и ребра;

• между собой узлы связаны определенным отношениями, которые представлены ребрами;

• узлы и отношения характеризуются рядом свойств.

-3

На картинке ниже — контейнерная иерархия документоориентированной БД. Данные содержатся без схемы, причем данные можно представить в виде дерева, являющегося графом. Обращаясь к документам либо к их элементам в дереве, вы сможете получить более выразительное представление данных, а ориентироваться в этом представлении можно относительно легко, если использовать Neo4j.

Ниже описаны особенности графовой БД на основе примера:

-4

Граф включает в себя узлы, помеченные некоторыми свойствами, причем узлы обладают связями друг с другом (связи представлены направленными ребрами). К примеру, связь «Alice -> Bob» выражается ребром с определенными свойствами. Хоть реляционные БД и способны копировать поведение графовых баз, ребрам понадобится соединение JOIN, что дорого обойдется.

Как это используется на практике?

Вспомните любой из рейтингов «Рекомендовано вам», которые есть на многих сайтах. Как правило, они формируются на основании оценки продукта пользователем. Как раз для такого случая и подходят графовые базы данных.

По материалам https://tproger.ru/translations/types-of-nosql-db/.