What approach would be the best for a hybrid (full + mini) 2D map view of a 3D city?

I’m developing a 3D city simulation with at least 10000 citizens and vehicles. Usually it will be played from a 1st person perspective and thus it won’t be zoomable too far (to avoid performance issues etc.)

At one point I will need a full 2D map view for the city and this map should display all the moving objects with some of their properties for their icons (something simple, e.g. red dot:enemy, green dot: ally etc.). Also I’ll need zooming and panning.

Usually the full map will be hidden and only a small portion (mini-map) will be visible (but should be togglable on/off). The full view will be opened using TAB key.

So, it seems some kind of a hybrid - show the full map or just a mini-view of it.

What approach should be best for this? Should it be implemented entirely in UI level using canvas or widgets and sprites or should it be something like a separate 3D level view? Should I use sprites in the full map for those 10k dots or it would be more efficient to draw them procedurally?

Is there any plugin on the Marketplace that supports such hybrid (minimap <-> full map) togglable maps and are efficient enough for my purposes?

Thanks for any ideas.