how do you setup a staging environment? Ok, this is a very open question. Let’s assume we have a giant database in Atlas. The simplest way to get a staging environment would be to just copy the db in Atlas. If money is not issue we are done at that point.
If cost reduction is an issue we need an other solution. This is actually a decades old problem and every time it has hit me it was either copy as mentioned above or start scripting to get a kind of consistent subset of data in a smaller database.
A further option could be to use some old local hardware and restore a full dump out of Atlas locally. Not smart, would work but you still need the hardware…
So back to the part were a consistent subset is copied to a new database… Before reinventing the wheel I like to find out if there is some best practice out there? Consistency depends on relations, relations are not physically stored in a noSQL schema, so IMHO there is no way to use any kind of automation to get related data consistent and automatically as an dump. So we are back to a scripted solution?
How do you approach this issue ?