Slow queries analyzer

With the slow queries analyzer you'll be able to identify your slowest queries and also the ones that are consuming most of the time of your instace.

To use the Slow queries analyzer please navigate to Insights and click on the Slow queries tab.

Note

Slow queries analyzer is part of the Insights bundle, which is available for production-ready databases: Standard and higher, and Quartz and higher in Heroku

Slowest execution time

To access the slowest execution time queries, click on the Slowest execution time link inside the Slow queries section.

The process of calculation the slowest execution time queries looks as follows:

  1. All queries that hit the database are logged. Same queries are aggregated, and normalized if needed. The execution time does not include I/O operations like talking with the client, sending the reply, etc. but just the time needed to actually execute the query.
  2. Queries which execution times are lower than the median are discarded
  3. The list of the slowest execution time queries is displayed in descending order by the 50th percentile execution time.

Clicking on the query will expand the information with following additional metrics:

  • Count: Number of times that this query was executed during the selected time window
  • Duration: 50th and 95th percentiles of the average execution time
  • Parameters: Sample set of parameters. Read more about parameters here
  • Example query: One example query out of the aggregation

Cypher parameters

Cypher supports querying with parameters. It makes caching of execution plans much easier for Cypher and making use of them is one of Neo4j best practices.

In order to be able to aggregate the queries, the ones that don't use parameters are normalized. As adding parameters is a good practice, these queries are displayed with the warning message: “This query has been normalized”, so that you're able to identify them.

Most time consuming

To access the most time consuming queries, click on the Most time consuming link inside the Slow queries section.

To calculate the most time consuming queries the execution time of each query is multiplied by the number of times it was executed.

Clicking on the query will expand the information with following additional metrics:

  • Count: Number of times that this query was executed during the selected time window
  • Duration: Total execution time of this query within the selected time window.
  • Parameters: Sample set of parameters. Read more about parameters here
  • Example query: One example query out of the aggregation

Slow queries analyzer