upvote
Deepsql doesn't require any predefined rules + stats, nor you need a DBA to operate it. It's an autonomous agent, that learns your business context, schema, join relationships and creates a mental map of everything (just like a DBA who joined your team). This we call it deepsql brain init stage. Once the init is done, it will then look at all slow queries workload, comes up with comprehensive suggestions of indexes, MVs etc. Other DBA tools might look at one query at a time, if we try to optimize one query at a time, we might over index.

Also, deepsql is intelligent in understanding the deployment type. Postgres standalone deployment is very different than Aurora postgres. Cost factors are quite different. Other DBA tools might ignore these factors - Hence they need well trained DBA to use them.

reply
I think most of the slow queries can be identified and fixed by simple rules with a proper tool. Like https://docs.percona.com/percona-toolkit/pt-query-digest.htm... . Have you done any benchmark about the accuracy of your tool?
reply
We have cross checked with industry standard tools like pganalyze. Most them analyze the workloads in isolation. There are no continuous evaluations and context carry forward across the runs.

DeepSQL does continuous evaluation of queries, we maintain performance life cycle of a query by customer.

A dashboard query for customer A might run for 2s, but for customer B it would take 50s. Here data clustering is the problem, skewness of distinct join keys … various factors. If query fix has to happen by looking at that query alone, one would make wrong decision (probably creating index). But a holistic decision would be partitioning here.

reply