Скажем, у меня довольно большой объект JSON. Этот объект может быть вложен множеством способов и включать массивы. Объект дает мне пользователя и их отношение к уникальным объектам типа и нескольким (массивным) объектам типа.Cypher Insert Querying Neo4J
Моя цель - вставить это в Neo4j как можно быстрее и эффективнее.
Можно ли это сделать, и рекомендуется ли в одном запросе, который является конкатенированной строкой, созданной путем итерации структуры JSON? (Разбор объекта и абстрагирование на несколько узлов и отношений)
Также распространенная проблема, которая усложняет этот процесс: Для массивов, которые я выполняю, когда я объединяю утверждения MERGE, узлы в Neo4J получают дублируется, и слияние не работает.
//Person to interests
_.each(interests, function(itr){
ingestQuery += 'MERGE(centerRep)-[:INTERESTED_IN]->(:Interest{name: "'+itr.interest_name+'", category: "'+itr.interest_category+'"})'
},this)
Таким образом, если это утверждение выполняется дважды, узел интереса будет создан дважды, что является нежелательным поведением.
«Это можно сделать, и это необходимо сделать в одном запросе, который является конкатенированной строкой, созданной путем итерации структуры JSON?» «Не уверен, что вы спрашиваете: вы хотите сохранить большую строку в Neo4j? Вы хотите проанализировать строку в формате JSON на несколько узлов? Вы пытаетесь построить импортера? Измените свой вопрос, чтобы уточнить. –
Также: у вас есть дополнительный вопрос (относительно слияния), который вы должны рассмотреть отдельно. –
Отредактировано, и если его достаточно просто ответить здесь, пожалуйста, сделайте это, для меня это часть моей проблемы (попытка сделать все с одним запросом и разделить его на несколько) – rambossa