Couchdb Couchbase同步网关:每个数据库有多个存储桶

Couchdb Couchbase同步网关:每个数据库有多个存储桶,couchdb,couchbase,pouchdb,couchbase-sync-gateway,Couchdb,Couchbase,Pouchdb,Couchbase Sync Gateway,我已经开始用CouchDB建立一个服务。该应用程序是为用户设计的,由于几个原因,它可以拥有无限的存储桶,并且工作得非常完美。 现在,由于一些企业特性,我已经切换到Couchbase。我正在使用PockDB,这就是为什么我需要同步网关。遗憾的是,我只能映射一个bucket/数据库 这对我来说是一个完美的解决方案:/db/bucket/etc 有什么想法可以实现这一点吗?Couchbase服务器存储桶可以存储任意数据。要同步网关,Couchbase服务器存储桶只是存储引擎目标,与用户和数据访问无关。

我已经开始用CouchDB建立一个服务。该应用程序是为用户设计的,由于几个原因,它可以拥有无限的存储桶,并且工作得非常完美。 现在,由于一些企业特性,我已经切换到Couchbase。我正在使用PockDB,这就是为什么我需要同步网关。遗憾的是,我只能映射一个bucket/数据库

这对我来说是一个完美的解决方案:/db/bucket/etc


有什么想法可以实现这一点吗?

Couchbase服务器存储桶可以存储任意数据。要同步网关,Couchbase服务器存储桶只是存储引擎目标,与用户和数据访问无关。在同步网关配置文件中,可以列出持久化到不同存储桶的多个数据库:

{
  "databases":{
    "db1": {
      "server": "http://localhost:8091",
      "bucket": "db1bucket"
    },
    "db2": {
      "server": "http://101.88.47.22:8091",
      "bucket": "db2bucket"
    }
  }
}
现在,假设您在配置文件中只声明了一个数据库,并且希望用户能够访问某些文档。您可以使用其中一个,然后在此基础上编写一个,将文档路由到其中并授予用户对这些通道的访问权。频道是动态创建的,可以创建的频道数量没有限制。如果不希望使用用户身份验证来访问通道中的文档,可以在客户端指定(更简单)


建议的方法是为每个项目或应用程序使用一个同步网关数据库,而不是为每个用户使用。因此,您可能必须将文档从不同的CouchDB数据库迁移到一个同步网关数据库。

Couchbase服务器存储桶可以保存任意数据。要同步网关,Couchbase服务器存储桶只是存储引擎目标,与用户和数据访问无关。在同步网关配置文件中,可以列出持久化到不同存储桶的多个数据库:

{
  "databases":{
    "db1": {
      "server": "http://localhost:8091",
      "bucket": "db1bucket"
    },
    "db2": {
      "server": "http://101.88.47.22:8091",
      "bucket": "db2bucket"
    }
  }
}
现在,假设您在配置文件中只声明了一个数据库,并且希望用户能够访问某些文档。您可以使用其中一个,然后在此基础上编写一个,将文档路由到其中并授予用户对这些通道的访问权。频道是动态创建的,可以创建的频道数量没有限制。如果不希望使用用户身份验证来访问通道中的文档,可以在客户端指定(更简单)

建议的方法是为每个项目或应用程序使用一个同步网关数据库,而不是为每个用户使用。因此,您可能必须将不同CouchDB数据库中的文档迁移到一个同步网关数据库中