NoSQL 多租户在每个文档tenantId 上使用是否不好?

问题描述 投票:0回答:1

我是多租户的新手,没有太多知识,我读过一些文章,但我想听听你的意见。

在每个模式/文档上使用 NoSQL 中的 TenantId,然后每次都使用 id 获取租户,这是否不好?

还有其他选择吗?

mongodb nosql
1个回答
0
投票

有多种方法可以在 SaaS 应用程序中处理多租户;广泛的讨论远远超出了 Stackoverflow 问题的范围。

但是,从技术角度来看,将所有租户的数据放在同一个数据库/集合中并通过租户 ID 进行识别是一种简单的方法 - 只要没有其他限制(例如法律要求、. ..) 并且您可以确保您不会意外地将租户 A 的数据提供给租户 B。如果您有类似规模的租户,这种方法通常效果最好。

话虽这么说,在这种情况下,或多或少每份文件都需要有租户 ID。但这个标识符的大小通常非常有限(例如 MongoDB 的 ObjectId 大小为 12 字节)。只需确保您优先使用数字或二进制数据类型而不是字符串。这减少了数据和索引条目所需的空间量。

查询文档时,您始终会筛选租户 ID,然后就可以开始了。此外,如果您有此需求,您还有一个优势,可以在单个查询中轻松分析多个租户的数据。

© www.soinside.com 2019 - 2024. All rights reserved.