Java 用Lucene存储
我想知道是否建议使用Lucene作为数据存储。我之所以说“推荐”,是因为我已经知道这是可能的 我问这个问题是因为我能找到的唯一一个问题是:这是一个过时的问题(从2010年开始),即使它几乎是完全相同的问题 我主要关心的是Lucene中数据的存储可靠性。我从2011年开始使用Lucene,当时(版本2.4)遇到CorruptIndexException并非不可能,这基本上意味着如果没有其他地方的数据,数据将丢失。 然而,在最新版本中(从4.x开始),我从未遇到过Lucene索引的任何问题 答案不应该考虑太多的性能,因为我已经很好地知道在那个领域期望什么。Java 用Lucene存储,java,elasticsearch,solr,lucene,Java,elasticsearch,Solr,Lucene,我想知道是否建议使用Lucene作为数据存储。我之所以说“推荐”,是因为我已经知道这是可能的 我问这个问题是因为我能找到的唯一一个问题是:这是一个过时的问题(从2010年开始),即使它几乎是完全相同的问题 我主要关心的是Lucene中数据的存储可靠性。我从2011年开始使用Lucene,当时(版本2.4)遇到CorruptIndexException并非不可能,这基本上意味着如果没有其他地方的数据,数据将丢失。 然而,在最新版本中(从4.x开始),我从未遇到过Lucene索引的任何问题 答案不应
我也很乐意听到SOLR和ElasticSearch的可靠性体验。。。(碎片故障的频率有多高,出现这种情况时我们有什么选择,等等)这听起来很适合,因为它能够并且愿意处理负载,并且还负责备份。我唯一担心的是它不是一个数据存储,它“只”与那些文档的索引一起工作。我们使用SolrCloud进行数据存储,到目前为止,可靠性相当好。
但是,请确保您对其进行了良好的配置和调优,否则您可能会发现节点出现故障,并且zookeeper在一段时间后无法检测到其中一些节点。我还没有准备好回答您的问题。然而,我最关心的是:“如果没有其他地方的数据,数据就会丢失”。任何您不想丢失的数据都应该可以从其他地方恢复。我也不会相信mySql或Oracle有一个无法恢复的数据存储。这是一个很好的观点。我只考虑正常操作范围内的可靠性。当然,定期备份是可以做到的,也应该做到,但正如您所说,这同样适用于任何数据存储,因此这不是最相关的方面。