Couchbase - 附加到JSON文档中的集合

时间:2014-08-21 21:38:11

标签: couchbase

如何使用Java SDK将数据附加到已存在的JSON文档的Collection?

3 个答案:

答案 0 :(得分:1)

Couchbase中目前没有json附加功能,因此您需要获取docuemnt,修改它,然后将其重新插入数据库。您还可以使用cas操作以确保没有其他客户端同时更新文档。

答案 1 :(得分:1)

我使用的是一件好事,但它需要通过代码来处理。 我在couchbase 2.x中编写了prepend / append 您可以使用旧文档,并使用","前置到JSON。 当你拿出来时,你需要把" [" "]"然后你将得到数据"的JSON列表; 当value是我想放在列表中的JSON时。

try {
    bucket.prepend(LegacyDocument.create(key, value + ","));
} catch (Exception e){
    //if fails first insert the basic JSON first.
    bucket.insert(LegacyDocument.create(key, value));
}

答案 2 :(得分:0)

我认为我有一些有效的解决方案。

如何使用字节流(非json值)首先将所有内容存储在临时数据库中。这样,您基本上可以根据需要附加值。在你的追加操作完成后(让我们说在批量数据加载结束时),你可以执行一个小程序来逐个检索json中的所有键并将其转换为json值并插入到我们的新数据库(你甚至可以使用现有的数据库)。

这显然是一种解决方法,但每次查询都要高效得多。

干杯,