Типы NoSQL: графовая база данных | OTUS
⚡ Подписка на курсы OTUS!
Интенсивная прокачка навыков для IT-специалистов!
Подробнее

Курсы

Программирование
Team Lead Архитектура и шаблоны проектирования Разработчик IoT C# Developer. Professional PostgreSQL Подготовка к сертификации Oracle Java Programmer (OCAJP) C# ASP.NET Core разработчик
-5%
Kotlin Backend Developer
-8%
iOS Developer. Professional
-8%
Symfony Framework Unity Game Developer. Basic JavaScript Developer. Professional Android Developer. Basic JavaScript Developer. Basic Java Developer. Professional Highload Architect Reverse-Engineering. Professional Java Developer. Basic PHP Developer. Professional Алгоритмы и структуры данных Framework Laravel Cloud Solution Architecture Vue.js разработчик Интенсив «Оптимизация в Java» Супер - интенсив по паттернам проектирования Супер - интенсив по Kubernetes Супер-интенсив "Tarantool" PHP Developer. Basic
Инфраструктура
Мониторинг и логирование: Zabbix, Prometheus, ELK Дизайн сетей ЦОД Разработчик IoT PostgreSQL Экспресс-курс "Версионирование и командная работа с помощью Git"
-30%
Экспресс-курс «Введение в непрерывную поставку на базе Docker» Базы данных Reverse-Engineering. Professional Administrator Linux. Professional Network engineer Cloud Solution Architecture Внедрение и работа в DevSecOps Супер-практикум по работе с протоколом BGP Супер - интенсив по паттернам проектирования Супер - интенсив по Kubernetes Супер-интенсив «СУБД в высоконагруженных системах» Супер-интенсив "Tarantool" Network engineer. Basic
Корпоративные курсы
Безопасность веб-приложений IT-Recruiter Дизайн сетей ЦОД Компьютерное зрение Разработчик IoT Вебинар CERTIPORT Machine Learning. Professional
-6%
NoSQL Пентест. Практика тестирования на проникновение Java QA Engineer. Базовый курс Руководитель поддержки пользователей в IT
-8%
SRE практики и инструменты Cloud Solution Architecture Внедрение и работа в DevSecOps Супер-практикум по работе с протоколом BGP Infrastructure as a code Супер-практикум по использованию и настройке GIT Промышленный ML на больших данных Экспресс-курс «CI/CD или Непрерывная поставка с Docker и Kubernetes» BPMN: Моделирование бизнес-процессов Основы Windows Server
Специализации Курсы в разработке Подготовительные курсы Подписка
+7 499 938-92-02

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

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

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

graf_2_e1538897300104_1-1801-8286de.jpg

Итак, особенности: • такие БД используют для представления данных узлы и ребра; • между собой узлы связаны определенным отношениями, которые представлены ребрами; • узлы и отношения характеризуются рядом свойств.

graphtree_1-1801-9f5ca0.png

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

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

graph3_1-1801-77be3d.jpg

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

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

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

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

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться