Как спроектировать / спроектировать мультитенантную модель базы данных с межклиентными запросами - PullRequest
0 голосов
/ 21 февраля 2020

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

Наши пользователи в основном мобильные пользователи, и пользователям необходимо получить информация о продукте от нескольких арендаторов в одном запросе. Это прекрасно работает в текущей модели, потому что информация о продукте, которую нужно получить, идентифицируется уникальным ключом базы данных (GUID). Существует таблица отношений, в которой хранятся идентификатор пользователя и идентификаторы соответствующего продукта.

В настоящее время мы рассматриваем возможность перехода на мультитенантное приложение с изолированными мультитенантными базами данных из-за увеличения числа арендаторов.

Таким образом, мы, очевидно, сейчас сталкиваемся с проблемой сбора информация по арендаторам.

Глядя на образец для этой модели, он строит DbContext для указанного c арендатора, используя tenantId для данного входящего запроса.

Мы могли бы явно расширить «Каталог DB» в этой концепции также содержит userId-> Product ID (с tenantId для каждой записи), но как веб-приложение сможет запрашивать несколько DbContexts элегантным и производительным способом?

Любые указатели или идеи?

...