Традиционные базы данных - это реляционные базы данных, которые хранят данные в строках и столбцах и подчеркивают возможность денормализовать данные и связать их с первичными и внешними ключами. Это хорошо подходит для традиционных вариантов использования, таких как база данных клиентов и заказов, для хранения и отслеживания ваших клиентов, инвентаря, продуктов и предметов, приобретенных клиентом.
Графические базы данных решают другую проблему, они подчеркивают взаимосвязи между данными в больших подключенных сетях и позволяют хранить, моделировать и запрашивать эти новые наборы данных и варианты использования. Мы опишем контекст и некоторые примеры случаев использования, когда база данных графа больше подходит, чем реляционная база данных.
Что такое база данных Graph
Графические базы данных предоставляют подход, основанный на отношениях, при хранении и запросе данных. Они хранят данные в логической форме, которая представляет реальную сеть, и приоритизирует представления, обнаруживаемость и ремонтопригодность взаимосвязей данных.
Базы данных графов используют структуры графов для семантических запросов с узлами, называемыми вершинами, ребрами и свойствами, для представления и хранения данных.
- Вершина - представляет собой реальный объект, такой как фильм или человек.
- Край - представляет собой связь между двумя вершинами.
- Характеристики - похожи на поля в планшете, но более гибкие. Может применяться к ребру или вершине.
Графические базы данных можно запрашивать с помощью графо-ориентированных языков, таких как sparkql, которые подходят для выражения проблем в больших графовых доменах.
Самые популярные графические базы данных
Существуют десятки коммерческих графовых баз данных с открытым исходным кодом, но самой популярной графовой базой данных, доступной в настоящее время, является Neo4j, которая представляет собой графовую базу данных с открытым исходным кодом, описанную ее разработчиками как ACID-совместимую транзакционную базу данных с собственным хранением и обработкой графов.
Другие популярные графические базы данных включают OrientDB (система управления базами данных NoSQL с открытым исходным кодом, написанная на Java), ArangoDB (собственная многомодельная система баз данных, разработанная triAGENS GmbH), MarkLogic (многомодельная база данных, разработанная для скорости и масштабирования NoSQL) и AllegroGraph (хранилище троек с закрытым исходным кодом, предназначенное для хранения троек RDF), и это лишь некоторые из них.
Примеры использования базы данных Graph
Графические базы данных применимы везде, где взаимосвязь данных важна в реальном времени:
- Социальные сети - Возможно, наиболее типичным вариантом использования графовой базы данных являются социальные сети с их сложными отношениями и действиями пользователей.
- Обнаружение мошенничества - Для обнаружения мошенничества в режиме реального времени необходим быстрый анализ взаимосвязей данных, а графические базы данных обеспечивают необходимую производительность.
- Графики знаний - Графы знаний, используемые как поисковыми системами, так и предприятиями, собирают информацию из самых разных источников, что позволяет улучшить управление цифровыми активами и упростить поиск информации.
- Анализ ИТ-сети - Управление сетями и ИТ-инфраструктурами вращается вокруг сложных взаимозависимостей, и графовые базы данных по своей природе более подходят для этого варианта использования, чем реляционные базы данных.
- Рекомендации - Компании могут использовать графические базы данных для поддержки сложных механизмов рекомендаций для персонализации продуктов, контента и услуг.
- Управление идентификацией - Базы данных Graph обеспечивают эффективное отслеживание активности пользователей, быструю авторизацию и управление активами.
Заключение
Графические базы данных решают современные проблемы с данными, фокусируясь не только на данных, но и на связях между отдельными записями базы данных. Они имеют множество вариантов использования и доступны как в виде программных продуктов, разрабатываемых сообществом, так и в виде коммерческих программ с поддержкой корпоративного уровня.