I have a sharded collection with 3 shards (shard1, shard2, shard3). Each shard is a 3-node replicaset (rs1, rs2, rs3).
I have a db called activity that has a large sharded collection called items. ie( activity.items). The data in this collection is split across shard{1,2,3}.
I have another db called app and collection called users (ie, app.users). This is not a sharded collection. It is housed on shard1.
I want to separate the replicasets that the apps.users and activity.items reside on. Ideally, app.users remains on shard1 and I can move activity.items from shard1 to a newly created shard4.
Is this possible? Any high level guidance on which commands to be looking at example docs would be greatly appreciated.
I’m open to other solutions as well. For example, maybe there is a way to tag the shards or replicasets in such a way that there is no affinity for data to be migrated there?