Построен ли API Gremlin поверх базы данных документов?

#gremlin #graph-databases #azure-cosmosdb-gremlinapi #tigergraph

Вопрос:

Я оцениваю базы данных для своего нового проекта, в котором существующие данные хранятся в базе данных cosmos SQL.

Для нашего варианта использования GraphDB кажется хорошим решением. Мои варианты-Гремлин API или TigerGraph.

Я слышал, что API Gremlin построен поверх базы данных документов, поэтому запросы будут выполняться медленнее, поскольку запросы Graph сначала преобразуются в запросы nosql, верно ли это утверждение? Есть какие-нибудь указания здесь?

Ответ №1:

Язык запросов Gremlin является частью Apache TinkerPop. TinkerPop не диктует, как создавать серверное хранилище и механизм запросов. Он поставляется со справочным графиком в памяти, написанным на Java, который фактически использует простую хэш-карту для хранения данных. TinkerPop был портирован на множество различных внутренних магазинов и моделей хранения. Однако это не очень распространенное место для хранения документов, и нет необходимости преобразовывать запросы Gremlin в SQL, если, возможно, вы не перенесете TinkerPop поверх реляционного или другого хранилища и не реализуете его таким образом. Большинство графических баз данных, с которыми я работал, реализуют поддержку Apache TinkerPop, используют специально созданные графические движки и имеют собственные оптимизаторы запросов, которые не имеют ничего общего с SQL. Я должен добавить, что я не знаком с тем, как реализована поддержка CosmosDB Gremlin. Главное заключается в том, что TinkerPop не определяет тип используемого магазина или способ реализации поддержки Gremlin.

Комментарии:

1. Спасибо Кевину за ваш ответ. Да, правильно, что Tinkerpop не сообщает основную структуру данных. Слышал, что API Gremlin работает медленнее. И вот почему я хотел знать, есть ли у кого-нибудь мнение о производительности API Gremlin по сравнению с TigerGraph/Neo4j. Но твой ответ помогает. Еще раз спасибо