You plan to create new Azure Cosmos accounts for four Cosmos DB databases.
The databases have the following requirements:
db1: A Core (SQL) API multi-region database with multi-region writes and an estimated 700 Request Units (RU/s) of provisioned throughput
db2: A Mongo DB single-region database, with an estimated 400 RU/s of provisioned throughput
db3: A Core (SQL) API single-region database, with an estimated 4500 RU/s of provisioned throughput
db4: A Mongo DB single-region database, with an estimated 500 RU/s of provisioned throughput
You need to deploy these databases using the minimum number of Cosmos accounts while minimizing the cost.
How many Cosmos accounts should you deploy?
You should deploy one Cosmos account for db1, another for db3, and a third for db2 and db4. You can deploy two Core (SQL) API Cosmos accounts, one with multi-region and multi-region writes for db1 and another account with single-region for db3. You can deploy db2 and db4 in the same MongoDB API account because they have the same single-region replication configuration. You need to configure the RU/s of provisioned throughput according to the database estimates.
You should not deploy one Cosmos account for all databases. You can select only one API type for a Cosmos account. You cannot use the same Cosmos account for Core (SQL) API and MongoDB API databases.
You should not deploy one Cosmos account for db1 and db3, and a second one for db2 and db4. Although this is a possible configuration for Cosmos accounts for these databases, db3 is provisioned in a Cosmos account with multi-region, multi-region writes. This doubles the cost per 100 RU/s per hour with multi-region writes and results in a more expensive solution.
You should not deploy one Cosmos account for each database. Although this configuration results in an optimal cost for the solution, you would achieve the same cost by deploying three Cosmos accounts: one Cosmos account for db1, another for db3, and a third for db2 and db4, instead of four Cosmos accounts.