Context:
- Tableau and Power BI Report Server on prem against SQL RDBMS and SSAS Tabular (Sql Server 2016)
- Denormalized table of data. Currently about 100m records.
Challenge:
Analyst does calculations which require MAX(datecol)
This doesn't seem possible in DAX in directquery mode, so I've pushed this back to the ETL and added a MaxDate column.
Now this is a big table and getting bigger by the day. DTA suggested a columnstore index, and that makes sense to me. But that index recommendation was based just on SELECT queries. I'll also have inserts and deletes (daily batch), and they will have to be followed by a:
UPDATE table SET MaxDate = MAX(Datecol)
My intuition is that this won't play nice with the columnstore index but I've not tested it. Perhaps depends on if is clustered or non-clustered?
Am I correct in saying that MaxDate has to be handled in ETL? Trying to do in DAX in DirectQuery mode results in errors.
Am I correct that care has to be taken with the columnstore index? Or perhaps it doesn't make sense at all because an index rebuild will be necessary?
I'm looking for a path forward that makes sense and avoids issues.