Hi.
I have started to evaluate metabase and one of the first things I saw is the lack of joins.
I read the article bout it.
What’s the best way around it?
Should I denormalize my data using ETL tool?
Doesn’t make any sense to do so. It will create huge amount of work.
My database is relational. some of the fields with foreign keys constraints and some just ID as a reference.
Doing ETL is a no go for me.
But I also think it’s basic to allow people to see country names and not memories the ids meaning.
Most of the time you don’t need joins - in your example of Country, you’d define the Country ID as a foreign key with the country name displayed in its place.
The ideal scenario is a star schema, but if you don’t want to do any ETL, you can use views or SQL. I’ve bee creating questions from 5-10 tables using a mixture of SQL and views depending upon the complexity of the data.
Under the “In the meantime” heading there’s actually a link to that you can do all the native SQL queries that you must do (if you’re the one among your colleagues who already understand JOINs).
I think it’s also put quite well why they choose to hide JOINs so much with this further down:
…The easiest release valve for this is to just slap three joins in every query. Once you go down this road, well then, yes, Join Support is a must-have in any analytics tool you use. However, by making queries that an end user would naturally like to ask require joins, your data model is implicitly saying you don’t want end users to ask their own self-serve questions. We think this is quite limiting.
You could just create views in a linked database. Then there’s no need to change your source database. Nor do you need any special rights on the source.
I am trying to understand how to handle multiple data sources with this above commentary
Hoping to migrate from Yellowfin BI where we have rather complex tables
Example - Marketing
I have 4 core data sources and 5 tables, I need to present in a table where the purpose of the the table is to show traffic, leads and cost per acquisition
Centralised date filters, measured by the Calendar Month
Pulling Marketing Reports for
SugarCRM for Enquiries (Cases) which then connect to contacts, linked to the below by grouped date on utm_source and date fields
SugarCRM for Converted opportunities connect to contacts via Contact ID