Luzmo contains an interactive, visual editor for analysing data, that will generate SQL queries automatically for you. We will push through aggregations and filters to your data sources as much as possible, to avoid full tables being pulled in.
Not having to understand the 'raw' relational data model & write SQL on top of it means that, in many cases, the Product or Customer Success teams can be responsible for dashboard design, freeing up the engineering team's resources.
There are still a few ways to have full control of the queries sent out, if you need it:
You can define views or materialized views (if your database engine supports them) and add those as data sources to Luzmo.
Specifically in case of a MySQL data source, you might want to set your View Processing Algorithm to MERGE (instead of the default TEMPTABLE), so pushdown queries on a view are optimized as a single query instead of being executed in multiple stages.
You can build a Luzmo Plugin to connect to your database and define arbitrary queries in it.
A Plugin is a small REST API that acts as an adapter between Luzmo and any data source. This can also be useful if you want to control which data is visible to clients even more tightly or want to connect using SSH tunneling.
You can also write your own SQL datasets in Luzmo itself based on your original database - which is very powerful.