Thanks for giving the post a fair shot!
In our case it's more than that: the data is dynamically changing, constantly, across tenants, across their data streams and across time.
What we're talking about here is basically dynamically creating a table structure from semi-structured data. It's not about "we don't know what the right columns are", it's about "there are no universally right columns, but there are some better and some worse ones within the bounded confines of some finite amount of data".