Multi tenant cluster architecture

How would you design a multi tenant cluster in eladtic 7.12? Should support 5000 tenants . Some have less than 100mb of data and some 150 gb or more.
I thought of having shared datastream for the small ones, and dedicated datastreams to the bigger ones.
My question is if that's the best option or maybe routing shouldbe preferred, and if it is-whats the best approach to move a client from a shared index?

Thanks

Yep, that makes sense.

Put them into their own index and use an alias to link the new + old indices together?

thank @warkolm ,
The thing is that I don't want to keep querying the shared index forever, so I was hoping to find a way to move the shared data into the dedicated index