Hello FDB experts,
Wanted to ask about FDB7.x Regions vs DR performance and whether one or the other (or a separate solution) can be best used for our use-case below.
We have a source FDB cluster in CloudA which we’d like to copy to machines in CloudB, and have both running independently until we’re ready to switch to CloudB serving traffic weeks later. Once the initial sync between CloudA and CloudB clusters is complete via FDB (we tested mostly with regions so far), we want to remain serving from CloudA. After the FDB data is copied, our application tier will have the responsibility to keep the 2 environment in sync rather than FDB itself.
Our questions so far are:
- Does FDB Regions use less resources than FDB DR? (i.e. do we need more machines/process count or process classes at source or destination to keep replication running alongside regular FDB usage)
- Can regions be used to copy a cluster and then make 2 independent clusters, as I attempted to describe above? (or DR or another solution)
For the switch from replicating via FDB vs our own ingest data path, we are able to stop ingestion at the source and start queuing up data to ensure consistency. We are planning to then disconnect the 2 clusters (stop replication via FDB), wait for each to report healthy, and resume ingestion of queued messages into CloudA and CloudB FDB clusters separately.
Also worth noting from our FDB Regions testing that we needed to disable perpetual_storage_wiggle (since we didn’t set perpetual_storage_wiggle_locality, and replication using regions started losing data once destination region with -1 priority was added and usable_regions were set to 2. Not sure if Configuration — FoundationDB 7.1 needs to be updated to mention wiggle, which I don’t think FDB7 enables by default, but we needed when switching from FDB6 ssd storage engine to FDB7 ssd-redwood-1-experimental.
Thank you,
Boz