Работа с Neo4J REST API - PullRequest
       26

Работа с Neo4J REST API

0 голосов
/ 25 февраля 2012

У меня есть несколько вопросов.

Как я могу запросить узел по его свойству? Я вижу только запрос по идентификатору узла.

А как я могу получить, например, всех друзей и неподтвержденных друзей узла? На данный момент я могу сделать это только путем запроса всех отношений узла и перебора его, проверяя свойство каждого отношения.

Моя идея заключается в следующем: у узла есть параметр - id (userID), у отношения есть свойства - направления - FROM_ME или TO_ME, статус - ПОДТВЕРЖДЕН, НЕ ПОДТВЕРЖДЕН. Все запросы выполняются в REST API на Java.

Как я могу сделать это простым способом, как в SQL, например, ВЫБРАТЬ друзей, ГДЕ friend_id = 1?

Ссылки на некоторые учебные пособия с решениями и приемами таких вопросов приветствуются

1 Ответ

1 голос
/ 25 февраля 2012

Чтобы ответить на ваш первый вопрос, вы можете использовать индексы для быстрого поиска узлов по свойству узла.Документы для REST здесь: http://docs.neo4j.org/chunked/milestone/rest-api-indexes.html

Что касается второго вопроса, язык запросов Cypher позволяет легко выполнять эти типы запросов.Вот пример, который получает всех пользователей, которые связаны с данным пользователем через отношение FRIEND, где свойство «status» отношения «подтверждено»:

START user=node(123)
MATCH user-[r:FRIEND]-friend
WHERE r.status="confirmed"
RETURN friend

Вы также можете добавить ограничения на направлениеотношений и связывают несколько отношений вместе на пути к поиску друзей-друзей и т. д.через API REST: http://docs.neo4j.org/chunked/milestone/rest-api-cypher.html

...