我正在尝试使用xml配置文件设置过期策略:
=INDEX(C:C, AGGREGATE(15, 6, ROW($2:$99)/((A$2:A$99=F2)*(B$2:B$9>=G2)), 1))
我对Ignite有点陌生。我经过documentation,但找不到。有什么办法可以将ExpiryPolicy设置为XMl?
任何帮助将不胜感激!
答案 0 :(得分:1)
这需要一点Spring XML魔术,因为CreatedExpiryPolicy
没有易于使用的工厂类(即没有CreatedExpiryPolicyFactory
可以像普通bean一样实例化),但是那里是CreatedExpiryPolicy::factoryOf
,可以作为factory-method
传递:
<property name="expiryPolicyFactory">
<bean class="javax.cache.expiry.CreatedExpiryPolicy" factory-method="factoryOf">
<constructor-arg>
<bean class="javax.cache.expiry.Duration">
<constructor-arg value="SECONDS"/>
<constructor-arg value="10"/>
</bean>
</constructor-arg>
</bean>
</property>
答案 1 :(得分:0)
Apache Ignite不支持SQL表的过期策略和TTL。
另一种选择是根据所需的时间窗口使用动态生成的名称创建缓存。
例如,如果需要每小时添加一天中的某个小时:
MY_CACHE_00
MY_CACHE_01
MY_CACHE_02
等...
MY_CACHE_23
然后使您的软件写入/读取最新的CACHE,并清除最旧的时间。