MongoDb 中的多租户

Multitenancy in MongoDb

我正在构建一个多租户 MongoDb 系统。如何根据请求在 Db 之间切换。我正在使用 MongoDb 和 Node js 使用 MongoDb 本机驱动程序。

您的 MongoClient 对象有一个方法 .db(dbname),该方法 returns 使用同一连接引用不同的数据库对象。

但您可能想考虑将所有租户的数据存储在单个数据库的相同集合中,然后向每个文档添加一个字段 tennant,然后将其包含在每个查询中。当每个租户都有单独的集合甚至单独的数据库时,数据库管理员的维护工作量会随着租户数量的增加而线性增加,因为许多维护和配置任务(例如配置分片)需要在每个租户上执行分别收集每个数据库。