gpt4 book ai didi

cassandra - 使用 "with"时间戳通过 Ignite 写入 Cassandra,以消除对 Cassandra 的过时写入

转载 作者:行者123 更新时间:2023-12-04 10:18:48 25 4
gpt4 key购买 nike

我正在寻找此功能,以便能够通过顶部的 Ignite 层写入 Cassandra,类似于 Cassandra 支持“带”时间戳功能的方式,以便可以消除陈旧的更新。
我们想通过 Ignite 写入的原因是因为我们可能会在写入后立即收到读取调用,并且 API 需要提供最新的服务,而不是等待 Ignite Cache 上的 TTL 或 LRU。
另一方面,我们可以直接写入 Cassandra,然后使条目无效/删除以确保提供最新数据。但可能有更好的方法吗?

最佳答案

似乎您需要的是启用了通读和直写的缓存。使用类似于以下的配置创建缓存:

<bean class="org.apache.ignite.configuration.CacheConfiguration">
<property name="name" value="cache1"/>
<property name="readThrough" value="true"/>
<property name="writeThrough" value="true"/>
<property name="cacheStoreFactory">
<bean class="org.apache.ignite.cache.store.cassandra.CassandraCacheStoreFactory">
<!-- ... -->
</bean>
</property>
</bean>
当您写入此缓存时,写入将同步传播到 Cassandra,当您读取它时,Ignite 将从 Cassandra 中获取值(如果它还没有)。
注意:如果您直接写入 Cassandra,Ignite 不会知道这一点,并且会继续提供陈旧的值。使用 read-through 和 write-though 时,最好通过 Ignite 路由所有写入。

关于cassandra - 使用 "with"时间戳通过 Ignite 写入 Cassandra,以消除对 Cassandra 的过时写入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60962037/

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