如何将Redis与ElasticSearch一起使用

Ami*_*edi 4 c# redis elasticsearch booksleeve nest

我为ElasticSearch找到了NEST.但我没有意识到Redis和ElasticSearch之间的关系.我将建立一个社交网络,并想知道你是否有一些部分Redis和ElasticSearch的某些部分应该被使用或它们的组合.我使用Redis的项目的哪个部分以及ElasticSearch使用哪个部分以及哪个部分应该是综合使用.

我使用C#,BookSleeve用于Redis,ElasticSearch用NEST,ASP.NET MVC

Mar*_*ell 9

这两件事之间几乎没有关系.我怀疑你可能在之前的对话中得到了错误的结尾,在那里你想要在redis中搜索单个值来使用作品(这个问题:如何通过BookSleeve在redis中搜索内容值).我试图提出的一点是,这根本不是redis的一个特征.所以你有两个选择:

  • 编写自己的单词提取代码(词干分析器等)并在redis中手动构建索引
  • 使用专为您完成所有这些工作的工具

像ElasticSearch这样的工具(位于lucene之上)很擅长.

或者用其他术语提出问题:

  • X问"我怎么用螺丝刀把木头切成两半"
  • Y说"用锯子"
  • X然后询问"我如何使用带锯的螺丝刀将木材切成两半?"

答:你没有.这些事情没有关系.


Shō*_*un8 6

实际上,Redis 和 Elasticsearch 可以以一种非常有用的方式结合起来;如果您将数据从源流推送到 Elasticsearch,并且该数据流突然爆发并变得过多,以至于您的 Elasticsearch 实例无法摄取,那么它就会丢弃数据。但是,如果您将 Redis 实例放在 Elasticsearch 前面来缓存数据,那么您的 Elasticsearch 实例可以在突发情况下幸存下来而不会丢失数据,因为它会缓存在 Redis 中。

这只是一个例子,但还有更多。有关如何缓存查询的示例,请参阅此处。

  • 否。请阅读技术手册。数据将被丢弃,永远不会再次被摄取。曾经,从来没有。永远永远永远永远。 (2认同)