Я хотел бы описать два сценария, в которых система имеет большой XML-файл (содержащий несколько тысяч строк данных).У меня вопрос, какой сценарий имеет лучшую производительность, A или B?
Первый шаг одинаков для обоих сценариев: функция проходит через xml и помещает узлы и атрибуты в базу данных neo4j:
.xml --> custom function --> neo4j
Производительность этой пользовательской функции не имеет значения, потому что это происходит только один раз.
Чем мы хотели бы знать N-го дядю узла, например.Таким образом, мы запрашиваем neo4j для этого и возвращаемся с запрошенным узлом.
A) В первом сценарии мы запрашиваем neo4j напрямую
neo4j <-- query: Cypher <-- GUI
B) Во втором сценарии мы запрашиваем xmlнепосредственно с помощью Xquery мы получаем идентификатор обратно.
xml <-- query: Xquery <-- GUI
И затем мы запрашиваем этот идентификатор у neo4j
GUI --> query: Cypher --> neo4j
Так что в первом сценарии мы запрашиваем neo4j итакже выполните основные операции чтения / записи / обновления / удаления.
во втором сценарии мы запрашиваем xml и выполняем только основные операции чтения / записи / обновления / удаления в neo4j.
Было бы неплохо узнать, какая версия имеет лучшую производительность для системы и почему!