Sie sehen also irgendwo in der Region von 100 Milliarden Datensätzen (1 Million Datensätze * 100.000 Benutzer).
Die bevorzugte Methode zum Umgang mit großen Datenmengen besteht darin, einen Sharded-Cluster zu erstellen, der die Daten auf mehrere Server aufteilt, die über den Mongo-Client als einzelne logische Einheit dargestellt werden.
Daher lautet die Antwort auf Ihre Frage, dass alle Ihre Datensätze in einer einzigen Sharding-Sammlung abgelegt werden.
Die Anzahl der erforderlichen Shards und die Konfiguration des Clusters hängen von der Größe der Daten und anderen Faktoren wie der Menge und Verteilung von Lese- und Schreibvorgängen ab. Die Antworten auf diese Fragen sind wahrscheinlich sehr spezifisch für Ihre individuelle Situation, daher werde ich nicht versuchen, sie zu erraten.
Ich würde wahrscheinlich damit beginnen, zu entscheiden, wie viele Shards Ihnen die Zeit und Maschinen zur Verfügung haben, um das System auf einem Cluster mit so vielen Maschinen einzurichten und zu testen. Basierend auf dessen Leistung können Sie entscheiden, ob Sie mehr oder weniger Shards in Ihrem Cluster benötigen