Неография: Обход против Сайфера
Сейчас я что-то строю с помощью Neo4j и Neography, и мне было интересно, что предпочтительнее: использовать метод обхода или запрос Cypher?
Лично мне нравится Cypher, но я понятия не имею, что лучше / эффективнее
3 ответа
Сайфер действительно интуитивен, как указал Матиас, однако у меня есть следующая рекомендация:
Если это тривиальный материал, иди Cypher, его легче написать (на самом деле радость), и не должно быть никакого большого снижения производительности. Однако, если у вас есть более крупные совпадения или условные запросы, знание области вашего графика может значительно повысить производительность, если вы используете пользовательские траверс или даже Gremlin.
Я только что создал тест для запросов друга друга для Cypher vs Core API и Traverser Framework на графике с 1 миллионами узлов. Запросы FOAF не очень сложны, но являются хорошим вариантом использования для баз данных графиков, таких как neo4j.
Вы можете видеть, что Cypher работает намного хуже, чем основной API.
Я уверен, что у них обоих есть свои плюсы, и Cypher, вероятно, уже более интуитивно понятен в выражении ваших запросов. Попробуйте сформировать свои запросы с помощью Cypher, если вам это нравится и если производительность вас устраивает, тогда все хорошо! Если нет, то, возможно, попробуйте это в рамках обхода.