I have no experience of Tableau, but some with DD:
Our experience, with a quite difficult data model (using QlikView), was to bail out and prepare a view in the db with the dynamic data needed (and one dimension) from which we read as-is using DD. The update time of your document will depend on the number of objects you have as they seem to access the view one by one.
Loading the dimensions is fast, or as fast as any ordinary load.
We proposed using other tools when we realized we had to prepare a separate view, but the client did not want to add more tools in the toolbox so we had to use QlikView.