我有一个riak系统,我尝试更改复制值,但不是完整的。 我使用命令行来改变:
curl -v -XPUT \
-H "Content-Type: application/json" \
-d '{"props":{"n_val":2}}' \
http://<my-ip-riak>:8098/buckets/<my-bucket>/props
然后,我通过s3cmd将文件放入riak:
s3cmd put <my-file> s3://<my-bucket>
我检查了riak的大小:
du -sh /var/lib/riak/
我看,它复制3,它不会改变复制值。 有什么帮助吗?
干杯,
Nghiep
答案 0 :(得分:0)
如果您使用s3cmd
,则使用的是Riak CS,而不是Riak。使用s3cmd创建存储桶时,Riak CS会创建2个存储桶:一个用于存储清单记录,另一个用于存储数据块。两个存储桶名称都基于存储桶名称的md5哈希值,使用riak_cs_utils:to_bucket_name/2
函数。由于存储桶名称是二进制的,即使您正确预测了该名称,您也无法在URL中发送它以便能够更改其属性。
您可以从附加控制台或通过协议缓冲区更改单个存储桶的属性,但我从未尝试过这样做。
您应该能够更改app.config或riak.conf文件中的默认存储桶属性,以便所有存储桶都使用n_val = 2.