问题标签 [couchbase-java-api]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
73 浏览

java - 如何在沙发库的全文搜索索引中对 desc/asc 进行排序

我有这个查询要从我的应用程序中针对全文搜索沙发库索引执行:

如何指定 createionDateTime 的排序方向?

谢谢你的帮助

0 投票
1 回答
273 浏览

java - 比较和交换:如何将 cas 元数据字段映射到我的沙发库的文档实体

我正在使用 spring 数据从 couchbase 获取文档,我需要将检查和设置元数据字段cas映射到我的文档以实现乐观锁。

我怎么能不使用 n1ql 查询呢?

Couchbase 中的 CAS 参考

谢谢

0 投票
1 回答
213 浏览

java - Couchbase 批量子文档操作

我正在使用 Couchbase-Java SDK 2.7.1 并尝试对一组文档键执行批量 subdoc 操作。下面的代码没有抛出任何错误,但在执行给定代码后文档没有得到更新。

0 投票
1 回答
1079 浏览

spring - 如何使用 Spring Data Couchbase SDK 生成带前缀的唯一 ID?

我想知道如何使用 Couchbase SDK生成带有前缀的唯一 ID,例如user::524525 。

当我使用 Couchbase JavaSDK 指南开始使用 Couchbase 时,我注意到在所有示例中,id 看起来都类似于 TYPE::ID,例如 user::king_arthur。也建议这样做以避免不同文档的 id 冲突。当我从 Spring Data Couchbase 阅读文档时,我认为这样做的方法是

但是当我对此进行测试并签入数据库时​​,ID 只是“用户”。

我错过了什么吗?它是一个错误吗?我将不胜感激任何建议。

0 投票
1 回答
166 浏览

spring - 用新的集群替换 spring couchbaseTemplate 对象,Bucket 对象而不影响事务或重新启动应用程序

我想替换由自定义 Bucket 对象(其中用户名是 <> bucketName)和 Cluster 对象在启动时生成的 spring couchbaseTemplate 对象。我能够创建应用程序并使应用程序运行。CouchbaseTemplate 也被调用。2 天后,我将获得新的用户名、密码。所以我想在 spring 上下文中重新加载 couchbaseTemplate、Cluster 和 Bucket - 3 个新对象,以便新的 couchbaseTemplate 开始运行。我试图从 applicationContext 替换 couchbaseTemplate通过调用。

但是这段代码对我不起作用,并且说 bean 仍然存在于上下文中。我的问题是

  1. 这是正确的做法吗?
  2. 有没有更简洁的方法来设置 couchbaseTemplate、cluster 和 Bucket 对象而不影响实时事务。
  3. RefreshScope 方法在这里重新加载 bean 有帮助吗?但是,这并不能保证所有依赖的 bean 重新加载都依赖于用 @RefreshScope 注释的 bean。

couchbase DB 的点击量是 100/second 。

进一步的发现我进一步尝试发现可以修改 spring-data-couchbase 存储库以允许使用 AtomicReference 在 CouchbaseTemplate.java 中设置 Bucket 以供客户端使用 Bucket

用 getClient() 方法替换所有客户端

但是,当我交换使用新用户名和密码创建的存储桶时,我会在第一次请求时收到 requestCancelledInFlightException。请建议。

0 投票
0 回答
43 浏览

couchbase - 如何在 Couchbase 中使用 SearchQuery/全文搜索按日期类型排序?

我已经配置并索引了接收日期。在我的数据库中看起来像 receivedDate:"2019-02-130 01:01:01 PM"。如何使用日期类型文本或日期类型实例进行排序?

这是配置的字段(假设没有任何错字以防万一)。

我想按名称排序,然后按接收日期排序

这是全文索引的样子:

0 投票
1 回答
53 浏览

java - 使用 REST API 的 Couch Base 配置

我正在尝试对 CouchBase 进行自动配置:

  • 管理员用户
  • 桶用户
  • 沙发底座服务(数据、kv、n1ql、索引、fts、搜索)

使用其余 api 一切顺利,但我可以看到在进行手动配置时我可以在集群创建期间看到服务选项:

在此处输入图像描述

但是,当我尝试将其作为服务传递时,使用 RESI api 创建集群服务时data,它会说:

我用来创建服务的 REST API:

请建议我在这里做错什么了吗?

0 投票
1 回答
436 浏览

observable - 使用JavaRX将文档插入沙发库时引发DocumentAlreadyExistsException异常时如何继续下一个文档?

我正在处理读取、转换和写入文档到 coucbase 的批处理作业。我正在使用 Java 批量插入文档。我不想使用 upsert,因为我想记录文档是否已经存在于 couchbase 中并调用了 insert。请在下面找到我的代码。当文档已经存在时,会抛出 DocumentAlreadyExistsException 并且作业会停止,而不是继续处理下一个文档。如何处理这个问题?

代码:

例外:

0 投票
0 回答
130 浏览

couchbase - 将具有带有“IN”参数的“where”子句的 N1Ql 查询转换为 mapreduce 视图

我有一个简单的select查询,哪个mapreduce视图已经存在。

询问:

看法:

查询视图的键:

要求:现在,我们希望此视图支持具有参数IN子句的查询status。此外,我们想添加额外的参数支持IN参数。示例N1Ql如下。

如何在视图上编写查询来完成此操作?我想到的唯一解决方案是在视图上触发多个(比如说 x)查询

有没有更好的解决方案,例如批量执行此查询(使用javaSDK)或单个mapreduce查询?

0 投票
1 回答
517 浏览

couchbase - 如何在使用 couchbase 子文档 api 执行更新时获取 CAS 值?

我想对文档进行更新。我正在使用 couchbase subdocument api 来更新文档。

在执行更新时,我手头只有文档 ID。但是,要获得当前的 Cas 值,我必须执行 get to the couchbase。

我的更新看起来像:

为了处理乐观锁定,我想使用"mutateIn(id).withCas(<currentcasvalue>)"

在执行更新时,我手头只有文档 ID。但是,要获得当前的 Cas 值,我必须执行 get to the couchbase。 有没有办法避免获取整个文档,以便只获取 cas 值来执行更新。

这是正确的方法吗?