Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Entradas por lotes utilizando UNWIND en lugar de declaraciones individuales
Siempre que sea necesario ejecutar la misma consulta para diferentes entradas, en lugar de ejecutar una consulta por entrada, sería mucho más eficaz ejecutar una consulta para un lote de entradas.
Si quieres fusionar un conjunto de nodos, una opción es ejecutar una consulta de fusión por entrada:
MERGE (n:Person {`~id`: $id}) SET n.name = $name, n.age = $age, n.employer = $employer
Con parámetros:
params = {id: '1', name: 'john', age: 25, employer: 'Amazon'}
La consulta anterior debe ejecutarse para cada entrada. Si bien este enfoque funciona, puede requerir la ejecución de muchas consultas para un conjunto grande de entradas. En este escenario, el procesamiento por lotes puede ayudar a reducir el número de consultas ejecutadas en el servidor, así como a mejorar el rendimiento general.
Use el siguiente patrón:
UNWIND $persons as person MERGE (n:Person {`~id`: person.id}) SET n += person
Con parámetros:
params = {persons: [{id: '1', name: 'john', age: 25, employer: 'Amazon'}, {id: '2', name: 'jack', age: 28, employer: 'Amazon'}, {id: '3', name: 'alice', age: 24, employer: 'Amazon'}...]}
Se recomienda experimentar con diferentes tamaños de lote para determinar qué es lo que mejor se adapta a su carga de trabajo.