我正在尝试使用带有角度的长沙发来创建POS(销售点)应用程序。由于我是NoSQL世界的初学者。需要有关如何设计系统的指导。
它应该是基于云的应用程序,其中登录用户可以创建公司,并且每个公司都有n个位置。
从关系数据库的角度来看,我的数据库设计如下所示。
- 在登录到我的应用程序时,用户名和密码已根据许可证数据库进行了验证。如果他们有效,则应用程序将连接自己的公司数据库。
- 每当用户创建新公司时,都会创建新数据库,所有位置,发票,付款都在其自己的数据库中。
- 负责用户帐户,付款及其计划和安全级别(他们可以访问/编辑的屏幕)的许可数据库。
- 该应用程序具有使用PouchDB的脱机支持。将相关的位置详细信息下载到用户浏览器,然后将其同步回服务器数据库。
问题:
- 是否可以为每个公司创建数据库。
- 如果用户要脱机操作,则只能同步自己的位置数据(过滤复制),如果要访问其他位置数据,则应用程序应连接云数据库。
- 我想要相同的代码来查询/将数据插入沙发床和PouchDB中。有可能吗?
- couchdb map-reduce / mango查询是否支持复杂的报告
- 使用Angular + Couchdb是否足够,还是我需要任何服务器端框架。我现在没有任何第三方身份验证。
- 如何在沙发数据库中实现上述关系数据库设计
关于此软件设计,我还应该考虑些什么