Neo4j vs TigerGraph: сравнение графовых СУБД

Neo4j vs TigerGraph, сравнение Neo4j с TigerGraph, NoSQL СУБД, графы базы данных примеры курсы обучение, графы Data Science примеры курсы обучение, Школа Больших Данных Учебный Центр Коммерсант

Что общего у Neo4j с TigerGraph и чем они отличаются: разбираемся с популярными графовыми СУБД и их возможностями для аналитики больших данных в рамках продвижения нашего нового курса по графовым алгоритмам в бизнес-приложениях.

Сравнение Neo4j с TigerGraph

Подробно об архитектуре, принципах работы, функциональных возможностях и вариантах использования TigerGraph мы писали здесь. Чтобы не повторяться, для сравнения этой графо-ориентированной массивно-параллельной базы данных с открытым NoSQL-хранилищем Neo4j, выделим ряд критериев, которые следует учитывать при выборе одного из решений:

  • открытость исходного кода;
  • наличие схемы данных;
  • типизация данных;
  • поддержка ANSI-SQL;
  • соответствие ACID-требованиям к транзакциям;
  • механизмы обеспечения согласованности данных;
  • собственный язык запросов;
  • предоставляемые API;
  • триггеры;
  • хранимые процедуры;
  • поддерживаемые языки разработки;
  • партиционирование и репликация данных;
  • индексация;
  • внешние ключи;
  • поддержка вычислительной модели MapReduce;
  • инструменты обеспечения безопасности и управления доступом к данным;
  • производительность;
  • объем хранения;
  • стоимость покупки и эксплуатации;
  • специальные возможности (библиотеки, плагины, модули и пр.);
  • варианты использования.

Для более наглядного сравнения СУБД по этим критериям, оформим это в виде таблицы:

Критерий

Neo4j

TigerGraph

открытость исходного кода

Открытый исходный код

Коммерческая платформа

наличие схемы данных

Возможно по желанию

да

типизация данных

да

да

соответствие ACID-требованиям к транзакциям

Да, об этом читайте здесь

Да, об этом мы писали здесь

механизмы обеспечения согласованности данных

Причинно-следственная согласованность и согласованность в конечном счете

 

поддержка ANSI-SQL

нет

в чистом виде нет, есть GSQL – SQL-подобный язык запроов

собственный язык запросов

Cypher

GSQL

предоставляемые API

Bolt protocol, Java API, Neo4j-OGM, RESTful HTTP API, Spring Data Neo4j, TinkerPop 3

Kafka, RESTful HTTP/JSON API

триггеры

Да в виде перехватчиков событий

Нет

хранимые процедуры

UDF-функции и процедуры

да

поддерживаемые языки разработки

.Net, Clojure, Elixir, Go, Groovy, Haskell, Java, JavaScript, Perl, PHP, Python, Ruby, Scala

C++, Java

репликация данных

алгоритм консенсуса протокола RAFT в Enterprise-версии

 

партиционирование

Да, с помощью Neo4j Fabric для горизонтального масштабирования через шардирование

 

вторичная индексация

с помощью подключаемых плагинов, по умолчанию Apache Lucene

 

внешние ключи

Да, через отношения (ребра) графа

Да, через отношения (ребра) графа

поддержка вычислительной модели MapReduce

нет

да

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

Пользователи, роли, разрешения. Подключаемая аутентификация LDAP, Active Directory, Kerberos

RBAC-модель доступа к данным

Производительность и объем базы данных

Динамическое сжатие указателей расширяет доступное адресное пространство Neo4j по мере необходимости, позволяя хранить графы любого размера, но не более 34 миллиардов узлов

OLAP-запросы с глубокими ссылками на графе размером 36 ТБ необработанных данных с 73 миллиардами вершин и 534 миллиардами ребер

стоимость покупки и эксплуатации

Community-версия бесплатно, стоимость подписки на Neo4j AuraDB начинается с $0,09 в час ($65 в месяц) и зависит от потребления памяти

Цены на TigerGraph Cloud зависят от выбранных экземплярах виртуальной машины и емкости хранилища, а также стоимости передачи данных

специальные возможности

Библиотека Graph Data Science с графовыми и ML-алгоритмами

Библиотека In-Database Graph Data Science с набором оптимизированных и готовых к использованию GSQL-запросов для графовых задачи и ML.

 

варианты использования

Анализ социальных связей, выявление сообществ, поиск путей

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

Таким образом, несмотря на схожие варианты использования, Neo4j и TigerGraph отличаются многими техническими аспектами. Выбирать открытое решение Neo4j с огромным набором функциональных возможностей имеет смысл при наличии способностей их использовать. Если же в компании отсутствуют дата-инженеры и администраторы, которые могут настроить систему для аналитиков данных и специалистов по Data Science, целесообразно использовать платформенный продукт, каким и является TigerGraph. Про сравнение Neo4j с другой графовой СУБД, Memgraph, читайте в нашей новой статье.

Освоить возможности практического применения  графовых алгоритмов и инструментальные средства их использования в реальных проектах аналитики больших данных вам помогут специализированные курсы нашего лицензированного учебного центра обучения и повышения квалификации для разработчиков, менеджеров, архитекторов, инженеров, администраторов, Data Scientist’ов и аналитиков Big Data в Москве:

Я даю свое согласие на обработку персональных данных и соглашаюсь с политикой конфиденциальности.

Источники

  1. https://db-engines.com/en/system/Neo4j%3BTigerGraph
  2. https://neo4j.com/developer/kb/capacity-planning-example/
  3. https://www.tigergraph.com/
Поиск по сайту