You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Status: proposed in #129, however, the speedup was not very big and not all queries tested actually became faster although the queries with speedup were in the majority. Status: added in #129
Use multithreading (or async if we upgrade to 5.x) to run concurrent sub-queries on a complex query e.g. get_stmts_for_stmt_hashes and queries depending on it.
The text was updated successfully, but these errors were encountered:
These are pretty good, I think doing the first one is trivial since session creation is done in a single place. The second one should also be straightforward, we just need to modify the low-level Cypher queries to be constructed this way instead of string manipulation. As for node labels, I think we are already doing that whenever possible. The last one could also be interesting, you could try it out on get_stmts_for_stmt_hashes to see if it makes a difference.
The neo4j python documentation have a page with performance recommendations, some of which are worth a try.
The ones that look relevant for us are:
Specify the target database on all queries when creating a new session:
Status: will not implement (some queries ran faster, but most queries actually ran slower with specifying the database by a small margin)
Use query parameters instead of hardcoding or concatenating values into queries:
Status: proposed in #129, however, the speedup was not very big and not all queries tested actually became faster although the queries with speedup were in the majority.Status: added in #129
Always use node labels:
Use multithreading (or
async
if we upgrade to 5.x) to run concurrent sub-queries on a complex query e.g.get_stmts_for_stmt_hashes
and queries depending on it.The text was updated successfully, but these errors were encountered: