Варианты архитектуры django multitenant: какое влияние на производительность базы данных?

Я разрабатываю веб-сайт, где безопасность данных является проблемой. Я прочитал эту книгу: https://books.agiliq.com/projects/django-multi-tenant/en/latest/index.html

Я все еще думаю о правильной структуре базы данных для пользователей. И я колеблюсь между общей базой данных с изолированными схемами, изолированными базами данных в общем приложении или полностью изолированными арендаторами с использованием docker.

Поскольку безопасность данных является проблемой, я хотел бы избежать размещения всех пользователей в одной таблице в базе данных или в разных схемах в одной базе данных. Однако я не очень хорошо понимаю, должен ли я поместить каждого пользователя в отдельную базу данных (создать базу данных для каждого пользователя, например, sqlite, но я не знаю, будет ли она хорошо взаимодействовать с postgres). Какова наилучшая практика для этого с точки зрения безопасности? Мне интересно, как эти варианты влияют на скорость работы с базой данных по сравнению с общей базой данных с общей схемой, которая была основной конфигурацией на курсе по django.

У меня нет хороших знаний о базах данных, поэтому ваша помощь в решении проблемы производительности была бы очень признательна!

Также, если я хочу сделать некоторую статистику и использовать данные по арендаторам, насколько сложно запросить полностью изолированных арендаторов, используя докер или изолированные базы данных, в частности, если каждый пользователь является отдельным докером или базой данных?

Вернуться на верх