Django multiDB多租户与MongoDB

2024-05-01 19:11:43 发布

您现在位置:Python中文网/ 问答频道 /正文

有没有软件可以为Django提供multi-DB-multi-tenant支持并与MongoDB一起工作?在

我想我只需要在数据库级别和模式级别上使用多租户,但不需要在应用程序级别。在

我有一个相当复杂的用户模型。有些用户可以查看其他用户输入的某些数据。用户通常属于组织。组织可以分层嵌套,并且在为组织内用户配置应用程序的方式上可能存在相似之处(例如,组织中的所有用户都将填写相同的表单,除非对单个用户覆盖了该表单)。有时,用户提交的某些数据可以由组织之外的用户查看,甚至可以在组织所在的层次结构之外查看。使用该应用程序的组织可能是竞争对手,而且我们处理的数据是敏感的,因此它需要非常安全。它也需要非常迅速地发展。在

我考虑给每个用户一个自己的数据库,然后使用共享数据库或一个具有多个模式的共享数据库,以便存储在组织内用户之间共享的配置。在


Tags: 数据django用户模型数据库应用程序表单db
1条回答
网友
1楼 · 发布于 2024-05-01 19:11:43

MongoDB上的多租户是完全可行的,我们正在onliquid.com的生产中使用它。在

我不知道有任何库,插件或具体的软件,为你做这件事,但它是可行的,不需要太多的努力。如果你想深入研究它,我建议你在选择要读写的数据库时,特别注意你正在使用的驱动程序的行为,并开始着手研究。另外,请看一下MongoDB配置选项,如smallfiles和{},它们允许您更好地管理差异并避免一些问题。在

我不久前用Mongoid为rubyonrails写了一篇blog post这篇文章,其中大部分细节都适用于所有的web框架,并且特定于MongoDB的内部工作。在

相关问题 更多 >