CouchDB: отдельные коллекции - PullRequest
       1

CouchDB: отдельные коллекции

0 голосов
/ 22 февраля 2012

Сегодня мы подумаем, обрабатывает ли CouchDB несколько коллекций баз данных?

Чтобы объяснить, что я имею в виду, у нашего веб-приложения есть два типа пользователей: бесплатные и коммерческие, которые сильно различаются по своему документу и структуре представления. По сути, это абсолютно разные продукты. База данных создается для каждого клиента и содержит все его данные и настройки.

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

У кого-нибудь есть идеи? Я знаю, что мог бы просто добавить префиксы к базам данных, но был после подхода типа MySQL, где создание отдельной базы данных было бы возможно.

Ответы [ 2 ]

0 голосов
/ 24 февраля 2012

Почему бы вам не добавить еще 2 свойства в ваш документ пользователя couchdb, например .instance и .type, где вы можете хранить их в поле .type 'FreeUserType' или 'PaidUserType', а в поле .instance просто написать какой-нибудь 'ID«вашей» группы / коллекции таким образом, вы можете запросить базу пользователей очень сложным способом, и это даст вам большую гибкость в расширении вашей базы данных с более «связанными» объектами данных, которые вы можете «присоединить» к запросам.

0 голосов
/ 22 февраля 2012

Кроме группировки ваших данных с использованием свойства каждого документа (то есть вы помещаете всех своих бесплатных клиентов в один и тот же БД и добавляете префиксы к своим представлениям с этим свойством), я не думаю, что есть какой-либо способ группировки аналогичных баз данных вместе, кромеИсходя из предложенного вами префикса.

Вы всегда можете запустить два экземпляра: один для бесплатных пользователей и один для платных.

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