2014-10-02 8 views
0

В моем проекте есть две модели: ORGANIZATION и CUSTUMER. Вот что я делаю, пока я добавляю новых клиентов в организацию. Я сохраняю Organisation_id в таблице CUSTOMER. Но теперь я беспокоюсь о производительности моего проекта, когда база данных становится огромной.django несколько баз данных для нескольких организаций в одном проекте

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

+1

такой же вопрос здесь: http://stackoverflow.com/questions/4115233/multiple-databases-vs-one-database-with-ids-used-to-separate-organizations –

ответ

1

Нет смысла создавать новую базу данных для каждой организации. Даже если количество клиентов или организаций растет до сотен или тысяч, сохранение данных в одной базе данных является вашим лучшим вариантом.

Edit:

Ваше оригинальное беспокойство было, что увеличение числа организаций, будет влиять на производительность. Итак, представьте, нужно ли создавать всю базу данных для каждой организации. У вас будут те же таблицы, индексы, представления и т. Д., Которые будут повторяться n раз. Каждой базе данных понадобятся системные ресурсы и дисковое пространство. Не говоря уже о коде, который должен был сделать Django о расколе. Вам нужно будет получить данные от n баз данных вместо одной таблицы в одной базе данных.

Также имейте в виду, что надежные базы данных, такие как PostgreSQL или MySQL, способны управлять тысячами или миллионами записей. Они будут делать лучшую работу из коробки, чем любой код, который вы можете придумать. Просто доверяйте им данные, и если вы заметите снижение производительности, вы можете найти множество подсказок в Интернете, чтобы их оптимизировать.

+0

@ leticia.If вы не против , Не могли бы вы объяснить причину – Thameem