点火到期政策不适用于旧数据

时间:2019-08-26 05:58:36

标签: ignite

我在点火缓存上有400M条记录。并且启用了本机持久性。我要启用到期政策。为此,我在下面的xml配置中添加了以下内容。

        <!-- Enabling expiry policy -->
    <property name="cacheConfiguration">
        <list>
            <bean class="org.apache.ignite.configuration.CacheConfiguration">
                <property name="name" value="CACHE_L4_TRIGGER_NOTIFICATION"/>
                <property name="expiryPolicyFactory">
                    <bean class="javax.cache.expiry.CreatedExpiryPolicy" factory-method="factoryOf">
                        <constructor-arg>
                            <bean class="javax.cache.expiry.Duration">
                                <constructor-arg value="MINUTES"/>
                                <constructor-arg value="60"/>
                            </bean>
                        </constructor-arg>
                    </bean>
                </property>
            </bean>
        </list>
    </property>

它适用于新添加的数据,但我有旧的400M数据。我需要帮助从此400M数据中删除30天的旧数据。怎么办我已经搜索过但找不到任何东西。我也无法清除所有数据,因为它们很重要。

1 个答案:

答案 0 :(得分:1)

您不能对现有数据执行此操作。如果未设置到期策略,则Ignite不会以任何方式跟踪何时创建或修改条目。您必须遍历所有数据并根据内容手动进行清理(例如,如果您具有创建时间戳记属性)。