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.
No utilice una ruta con nombre (a menos que sea obligatoria)
La ruta con nombre asignado en una consulta siempre conlleva un coste adicional, lo que puede suponer una penalización en términos de mayor latencia y uso de memoria. Analice la siguiente consulta:
MATCH p = (n)-[:commentedOn]->(m) WITH p, m, n, n.score + m.score as total WHERE total > 100 MATCH (m)-[:commentedON]->(o) WITH p, m, n, distinct(o) as o1 RETURN p, m.name, n.name, o1.name
En la consulta anterior, suponiendo que solo queremos conocer las propiedades de los nodos, no es necesario utilizar la ruta «p». Al especificar la ruta nombrada como una variable, la operación de agregación que DISTINCT se utilice resultará costosa tanto en términos de tiempo como de uso de memoria. Una versión más optimizada de la consulta anterior podría ser:
MATCH (n)-[:commentedOn]->(m) WITH m, n, n.score + m.score as total WHERE total > 100 MATCH (m)-[:commentedON]->(o) WITH m, n, distinct(o) as o1 RETURN m.name, n.name, o1.name