Я смотрю на GRANDstack, и теперь мне интересно, зачем кому-то использовать GraphQL вместо протокола Bolt для доступа к neo4j?





GRANDstack предназначен для создания приложения GraphQL API, поддерживаемого Neo4j, а не для прямого запроса базы данных с помощью GraphQL. Интеграция neo4j-graphql генерирует запросы Cypher, которые отправляются в Neo4j (через Bolt и клиентские драйверы Neo4j) из приложения API.
Таким образом, речь идет скорее о создании запросов к базе данных из запросов GraphQL, чем об отправке запросов GraphQL непосредственно в базу данных. На этом изображении показана архитектура GRANDstack — клиент запрашивает приложение GraphQL API с помощью GraphQL, это приложение API затем отвечает за разрешение данных из Neo4j (путем отправки запросов Cypher по протоколу Bolt), интересным моментом является интеграция neo4j-graphql, которая генерирует эти запросы к базе данных (Cypher) из запросов GraphQL.