В подкасте StackOverflow нет. 19, Джо описывает решение Fogcreek иметь одну базу данных для каждого клиента вместо одной базы данных для ВСЕХ клиентов. Это вроде как заставляет меня задуматься о следующем.
- Предполагая, что у меня есть 1000 пользователей.
- У каждого пользователя 100 клиентов.
- У каждого клиента есть 1000 товаров.
Это означает, что у меня будет 1000 x 100 x 1000 = 100 000 000 продуктов, связанных с пользователями. Теперь, если я сделаю запрос к таблицам соединения для пользователя и всех продуктов его клиента, сколько времени должно быть разумным, если я использую для этой цели только одну базу данных?
ОБНОВЛЕНИЕ
Может быть, я недостаточно ясно ответил на свой вопрос. Предположим, мне нужно выполнять всевозможные напуганные запросы (min, max, group и т. Д.) С наборами данных, как описано выше, будет ли это медленным (или нет) до такой степени, что имеет смысл иметь стратегию с несколькими базами данных, например . 1 БД / клиент, сегментирование базы данных и т. Д.