通过HTTP修改Riak中的单个json值

时间:2018-01-04 00:32:16

标签: json curl riak

我正在学习使用riak noSQL数据库,但我有一个问题,我几天都没有找到答案。

我有一个像这样的数据库条目:

curl -XPUT "http://127.0.0.1:8098/buckets/users/keys/user01" -H "Content Type:application/json" 
-d '{"Username":"Peter"}'

我正在更新这样的对象:

-d '{"update":{"Username": "Peter"}}'

截至目前,它取代了整个对象,但我希望能够只更新用户名字段,而无需将整个对象重新输入到我的查询中。

我正在尝试使用{{1}}制作地图,但不幸的是它无法解决。

如果有可能,还有什么想法吗?

1 个答案:

答案 0 :(得分:2)

在这里,您使用Riak作为纯key-value store。这意味着该值是不透明的,Riak对其结构一无所知。密钥的值只能作为一个整体替换。

为了能够更新文档的各个字段,您需要使用document store并相应地对数据建模。另一种选择是面向列的NoSQL数据库,例如Cassandra

另见Riak网站: