I still think the datasource adds great value since it allows non IT to do dashboards. However as soon as you want anything more, like some aggregation you will likely need to use SQL. To fully have a custom datasource i think you will need as i wrote, some UI where you can setup what data to display in the datasource and do aggregations there. This will of course require a lot of work so i understand if this is not priority. At the moment i think the best way is to utilize postgres/timescale to build aggregations using views, materialized views and functions. This will make it really easy for a non IT to just use like SELECT getKpi() WHERE asset = getAssetByName('machine1'). This way IT or the integrator can do all the heavy work direct in the DB and allow for a clean and easy user experience.