我正在使用riak-solr进行搜索。在集群中我们连接了4个节点。当我在solr上查询类似date_l:[x to y]时,它每次都会给出不一致的结果。有时它会返回1200个计数,如果再次查询,它会返回1240计数。据我所知,riak会复制所有节点上的所有数据。他们的任何解决方案是否所有节点都只与更新的数据同步?它与riak配置有关吗
答案 0 :(得分:2)
首先,为了澄清,Riak不会在每个节点上存储数据的副本。默认份数(R值 - http://docs.basho.com/riak/kv/2.1.4/developing/app-guide/replication-properties/) 3 。在您的4节点集群中,可能会将值存储在3个节点上。
至于您主要关注的问题,如果您从SOLR查询中得到不一致的结果,则可能表明副本由于某种原因而不一致(您查询的数据的三个副本由于某些原因而不匹配一种错误)。 Riak的主动反熵功能(AAE)通常会随着时间的推移修复不一致性。这需要多长时间取决于您拥有的数据量和不一致的大小。
如果问题无法自行纠正,您需要查看节点上的日志文件,看看发生了什么。