我正在列出任务以了解如何使用PouchDB / CouchDB,应用程序非常简单,需要身份验证,用户才能创建任务。
我的问题是关于如何在数据库中存储每个用户的信息。我应该为每个用户创建一个包含任务的数据库吗?或者有没有办法将所有用户的所有任务放入名为“任务”的数据库中,并以某种方式过滤同步,以便PouchDB不同步服务器中的整个数据库(包括其他用户的任务)? p>
(我已经阅读了几次pouchdb文档而且我无法定义这个,如果有文档记录,请告诉我在哪里。)
答案 0 :(得分:4)
您可以使用这两种方法来完成您的使用案例:
每个用户的数据库
每个用户的单个数据库
<强>结论强>
哪个更好?取决于您的用例......在任何情况下,您都应该考虑两种情况下的可伸缩性问题:
答案 1 :(得分:2)
两种模式都有效。唯一的区别是,为了使用过滤的复制,您需要提供对主数据库的访问。
由于它是在javascript中,因此很容易获得凭据然后访问主数据库。这将使用户能够查看每个人的数据。
更安全的方法是使用每用户数据库模式。每个数据库都将受到用户凭据的保护。