Enable Query Store for collection on a read-only replica in an Availability Group
Currently, Query Store can only be enabled for the read-write database in Availability Group. As many customers issue queries against the read-only replicas, capturing query and performance metrics for those queries would be beneficial for understanding the workload, troubleshooting performance issues, etc.
this is will be very much required feature, for Read-only replicas to leverage the real benefit of Secondary replicas.
Probably , we can keep this data at local file level... just like Trace or Extended Event data or writing to primary replica thru a listener with a simple flag of distinguish b/w primary & secondary queries
Sivakumar Vengala commented
We would like to enable query store on read only replicas since we have n number of downstream application accessing the databases. We would be able to provide some insight during performance issues if we can enable the query store on AG Read-Only Replicas.
This would be tremendously useful - even if the read-only replica was an in-memory version of query store that did not persist after reboot (may be easier to implement)
David Solomon commented
We depend on query store to do a tremendous amount of optimization. Please add this feature.
When your'e at it, do it for Azure Sql Database too
Daniel Tipser commented
It would be nice to have different Query Store for Read-Write replica and Read-Only replica. Or to have one Query Store, but with the statistics that can be split between replicas.
This is a much needed feature which should be in place, if we want to truly utilize Routing rules and load balance very large systems using AG.
Mark A Farrugia commented
Would love to see this feature implemented :)
Eric Russell commented
Question have been raised here about where to contain the QueryStore data when the feature is enabled on a read-only secondary database. One suggestion would be to redirect QueryStore data to another database, either locally or on a remote server. This could act as a consolidated repository for QueryStore data; something like a QueryStore DataMart.
Mirza Baig commented
This will be a huge benefit in performance tuning the readable secondary. It will make the readable secondary in the AG more usable. The workload is different anyway between the primary and secondary so it is better to have query store capture data separately for readable secondary.
Justin Hoffmann commented
This would also be extremely valuable to my company.
Durgaprasad Potnuru commented
This will be invaluable for us too, and assist us in growing and directing more traffic to secondary replicas. Please give it priority.
Steve Strelzyk commented
I agree with Alex Friedman. Our environment uses Read-Only replicas to direct reporting traffic. Couldn't the framework determine if the database is part of an availability group and direct the DML to QA using the ag listener name. That way data still rights to the same place and is replicated around everywhere?
the question is where to store as the dB on Replica is ReadOnly, TempdB?
Alex Friedman commented
This will be invaluable for us, and assist us in growing and directing more traffic to secondary replicas. Please give it priority.