План производительности Rails для многопользовательской системы, где каждый пользователь хранит большие объемы данных - PullRequest
2 голосов
/ 13 ноября 2010

Я нахожусь в процессе создания многопользовательского приложения rails 3, и прежде чем я зашел слишком далеко, я хотел убедиться, что нет лучшего способа сделать это ...

В настоящее время каждая таблица, такая как Контакты, Заказы, электронные письма и т. Д., Имеет идентификатор_пользователя, которому она принадлежит, но если я планирую, скажем, 500 пользователей, каждый с 10 000 записей в каждой таблице, есть ли лучший вариант производительности, такой как наличие пользователя конкретные таблицы (user1_contacts и т. д.)? И если так, как рельсы могут справиться с этим?

Спасибо!

1 Ответ

1 голос
/ 14 ноября 2010

5 000 000 записей в таблице невелики. Внешние ключи (own_to) и индексы здесь ваши друзья, и это хорошо, потому что они оба являются важными частями трансмиссии для реляционных баз данных (если вы используете реляционные базы данных). Помимо того, что вы позволяете базе данных делать то, для чего она создана, вашими единственными ограничениями будут аппаратные средства. В крайнем случае вы найдете аппаратные ограничения, которые могут побудить вас оценить схемы секционирования, которые помогут вам разделить работу, но вы далеки от всего этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...