我想实现一个Web应用程序——一个聚合来自各种来源的数据并向用户显示它们的动态信息流。一个用户只能看到他有权限阅读的动态内容(例如,因为这些内容属于他所在的项目)。然而,动态内容可能会被许多用户看到。
我真的很想使用CouchDB(主要是因为酷炫的_changes动态更新和map/reduce视图)。我考虑将应用程序作为纯couchapp实现,但我在权限模型方面遇到了问题。据我所知,CouchDB没有文档级的权限控制,通常使用基于每个用户数据库的复制来实现。
但当各个用户看到的内容之间存在很多重叠时,那就会引入大量开销......东西将被复制到各处,并在许多数据库中重复。我喜欢这种方法的优雅性,但是巨大的开销感觉像是一个不能接受的问题...(假设我有50个用户,他们都看到相同的数据...)
请问有什么解决方案吗?或者其他替代方案?