gpt4 book ai didi

caching - Aerospike 特定于 setName 的配置

转载 作者:行者123 更新时间:2023-12-02 01:31:35 34 4
gpt4 key购买 nike

我是 Aerospike 的新手..我的命名空间有多个集合。我正在尝试在 aerospike dB 命名空间中为不同的集合设置不同的 TTL。

我不想使用分配给命名空间的默认 ttl,而是想为每个集合设置它。

我的配置

namespace test {
replication-factor 1
memory-size 1G
default-ttl 0
}

我提到了这个链接https://docs.aerospike.com/server/operations/configure ,其中说明可以设置特定的记录策略。

namespace <name> {       # Define namespace record policies and storage engine
storage {} # Configure persistence or lack of persistence
set {} # (Optional) Set specific record policies
}

但我不确定应该使用哪个字段来设置每组的 ttl。比如说,我在这个“测试”命名空间中有两组名为 - ordername 的集合,我希望它们的 ttl 分别为 2 小时和 6 小时。任何帮助将不胜感激。

提前致谢

最佳答案

aeropsike中的所有记录都属于一个命名空间,集合只是记录上的元数据,就像标签一样。如果客户端在创建或更新时未指定,default-ttl 是记录的剩余生命周期。您无法在服务器配置中通过设置分配default-ttl。 (还有一些其他设置的特定配置参数,例如已实现的 disable-evictionenable-indexdefault-ttl 不是其中之一)但是您可以通过将其写入客户端应用程序来实现相同的目的。

对于每个集合,您可以使用不同的写入策略,并在该写入策略中定义用于在该特定集合中创建或更新记录的 ttl。例如在Java客户端中,称为WritePolicy.expiration,单位为秒。在您的具体情况下,您可以将 2 小时 default-ttl 作为服务器配置 - 因此,在客户端中创建或更新 name 中的记录时,订单将默认使用该值。 em> 设置后,您可以使用 WritePolicy.expiration = 3600 将服务器默认值覆盖为 6 小时。

关于caching - Aerospike 特定于 setName 的配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73190707/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com