Возможен ли подход CouchDB с базой данных для каждого пользователя для пользователей с большим количеством общих данных?

Я хочу реализовать веб-приложение — канал, объединяющий данные из различных источников и отображающий их пользователям. Пользователь должен только иметь возможность видеть элементы ленты, на чтение которых у него есть разрешение (например, потому что они принадлежат проекту, участником которого он является). Однако элемент ленты может (и будет) виден многим пользователям.

I' Мне очень нравится использовать CouchDB (в основном из-за крутой ленты _changes и представлений map/reduce). Я думал о реализации приложения как чистого приложения-куча, но у меня проблемы с моделью разрешений. -document в CouchDB, и это обычно реализуется с использованием баз данных для каждого пользователя и репликации.

Но когда существует много совпадений между тем, что видят разные пользователи, это приведет к МНОГО накладных расходов ... материал будет реплицироваться все на месте и дублируется во многих базах данных.Мне нравится элегантность этого подхода, но м пассивные накладные расходы просто кажутся нарушением условий сделки... (Допустим, у меня 50 пользователей, и все они видят одни и те же данные...).

Есть идеи, как насчет этого? Альтернативное решение?

11
задан Léo Léopold Hertz 준영 28 July 2012 в 04:23
поделиться