aerospike:内部记录和没有记录之间的区别

aerospike: difference between recored inside set and without set

Aerospike 支持在 set 内记录和直接在 namespace 内记录(没有任何 set)。后者的用例是什么?它们是否有任何性能方面或功能上的限制?

我的案例: 我将在一个名为 test_bin_value 的容器中有很多(10 亿条)记录,比如 test_set。现在我想跟踪 bin update_timestamp 中的最新记录 update/insert 时间。只要有人在 bin test_bin_value 中插入或更新记录,该 bin 的值就会更新。我应该把 bin update_timestamp 放在 set test_set 里面还是外面?如果我将它保留在同一组中,是否需要更多 space?两个bin都会有频繁的读写操作。

如果一个记录存在于一个集合中,则所有 bin 都将存在于该集合中。您可以将集合视为类似于 SQL 数据库中的 table,集合名称包含在记录的 header 中,因此适用于该记录中的所有 bin。

如果您使用的是集合名称,则开销为每条记录 9 + set_name_length 字节。

http://www.aerospike.com/docs/operations/plan/capacity/