草庐IT

search - Redis To Go 与 Websolr 的分面对比

coder 2023-07-18 原文

我正在尝试为包含大型数据集的项目找到最高效的解决方案。我想用分面过滤数据集。

我在云端运行,所以我会使用 Redis To Go 或 Websolr。 Sunspot 内置了刻面,我很想单独使用它。然而,我关注的是性能,我想知道是否为分面属性设置格式正确的 Redis 可以提高性能。

这两种解决方案如何比较性能?

最佳答案

您说您关注“性能”——也许您可以阐明这对您到底意味着什么?在不深入了解您的用户故事的情况下,我会说从性能的角度来看,Redis 和 Solr 都是完成这项工作的完全合适的工具。

对于初学者来说,如果您想将分面与全文关键字搜索相结合,那么 Solr 无疑是赢家。我们只是假设这里不是这种情况。

从我的角度来看,最大的权衡是实现分面需要的代码行数。 Solr 对分面的支持将“开箱即用”地为您工作,而 Redis 之上的索引和分面需要公平的投资。

对 Redis 的投资是否值得,这又回到了您如何使用这些方面以及您如何定义“性能”的问题。如果您想证明 Solr 优于 Redis,您可能需要定义和基准化一些实际指标。

哦,对了,完全公开:我是 Websolr 的联合创始人,也是 Sunspot 的维护者,就是这样。但我在我自己的应用程序中使用了一些 Redis,我不怕给 Redis 应有的 ;)

关于search - Redis To Go 与 Websolr 的分面对比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7382831/

有关search - Redis To Go 与 Websolr 的分面对比的更多相关文章

  1. ruby-on-rails - 结合 meta_search 与 acts_as_taggable_on - 2

    我在开发的Rails3网站的一些搜索功能上遇到了一个小问题。我有一个简单的Post模型,如下所示:classPost我正在使用acts_as_taggable_on来更轻松地向我的帖子添加标签。当我有一个标记为“rails”的帖子并执行以下操作时,一切正常:@posts=Post.tagged_with("rails")问题是,我还想搜索帖子的标题。当我有一篇标题为“Helloworld”并标记为“rails”的帖子时,我希望能够通过搜索“hello”或“rails”来找到这篇帖子。因此,我希望标题列的LIKE语句与acts_as_taggable_on提供的tagged_with方法

  2. ruby-on-rails - pg_search 使用 associated_against 给出错误 "column [model_name].[associated_column_name] does not exist" - 2

    我正在尝试使用pg_search来搜索关联模型。当我运行搜索时,出现错误“PG::Error:ERROR:columnplans.namedoesnotexist”。我正在“计划”模型中运行搜索,并尝试针对“地点”与列“名称”的关联进行搜索。连接这些的has_many:through模型是多态的。不知何故,sql查询将两者结合起来并抛出错误。我已经运行了associated_against迁移(railsgpg_search:migration:associated_against),搜索了文档,并寻找其他有错误的人,但一无所获,一定是我只是忽略了一些东西。如果我只是删除plan.rb

  3. ruby-on-rails - rails : How do I autocomplete search for Name but save ID? - 2

    我用过这个视频http://railscasts.com/episodes/102-auto-complete-association-revised在我的应用程序的表单中设置自动完成搜索输入。(该视频可能仅供成员(member)使用,因此我也会发布我的代码。本质上,它会搜索数据库(名称)的一列,并在您键入时在下拉列表中自动完成。这一切都很好,但是,我想要什么表单要做的是提交与名称相关的ID,而不是名称本身。我假设没有简单的方法可以仅在View中执行此操作。任何帮助都会很棒。下面的代码,让我知道是否有任何其他代码有帮助。谢谢Controller:defgame_namegame.try

  4. Ruby Regex 非贪婪匹配 : looking for the closest occurrence of a phrase left to a searched word - 2

    假设我有以下字符串:"BENffew123X\r\nBENx432f456X\r\nBEN!233789X\r\nBEN4545789X"我想要一个能捕获“BEN!233789”的正则表达式,它必须非贪婪地查找“BEN”,后跟任何字符(不包括“BEN”一词)并以789X结尾。我尝试了正则表达式:/BEN.+?789X/mi,我得到了"BENffew123X\r\nBENx432f456X\r\nBEN!233789X"作为匹配项。我知道这个正则表达式寻找第一个“BEN”并捕获字符串的开头,但我希望它寻找最接近第一个“789X”的“BEN”。我怎样才能做到这一点?一个想法是反转字符串,我

  5. ruby-on-rails - 带有可选参数的 Rails Search? - 2

    当搜索可以提供许多可选参数(如ID、邮政编码、城市和州)时,我将如何在数据库上进行搜索?这些可以有值或完全空白。我将如何进行这样的Rails查询? 最佳答案 通常的建议是将逻辑转移到模型中并使Controller尽可能精简。filter方法有不同的做法,第一种:classRecordvalue)when:city,:state#regexpsearchscope.where(["#{key}ILIKE?","%#{value}%"])when:order#order=field-(ASC|DESC)attribute,order=v

  6. javascript - 在 Plone 5 的分面 View 中使用模型模式 - 2

    当我使用像2016-07-30T15:10:00这样的模型模式时在faceted:view(eea.facetednavigation的自定义View)该模式根本不起作用,因为内容是用javascript注入(inject)的。在https://stackoverflow.com/a/35699974/637399@ebrehault写道,模式在加载时初始化,如果DOM发生变化并包含新元素,您需要调用Registry.scan($('#content-core'))其中Registry是pat-registry和#content-core页面的注入(inject)部分。我如何在eea.

  7. javascript - 错误 : "Could not find a declaration file for module ' react-search-input'" - 2

    我正在尝试安装react-input-search。我有错误:Couldnotfindadeclarationfileformodule'react-search-input'.'.../app/node_modules/react-search-input/lib/index.js'implicitlyhasan'any'type.Trynpminstall@types/react-search-inputifitexistsoraddanewdeclaration(.d.ts)filecontainingdeclaremodule'react-search-input';ts(70

  8. javascript - 使用 .match 和 .search 的区别 - 2

    我为coderbyte使用了以下代码:functionVowelCount(str){//codegoesherereturnstr.match(/[aeiou]/gi).length;}//keepthisfunctioncallhere//toseehowtoenterargumentsinJavaScriptscrolldownprint(VowelCount(readline()));我理解大部分代码,除了以下部分:正斜杠和方括号的作用是什么?gi有什么作用?search()和match()有什么区别?我应该在什么情况下使用什么? 最佳答案

  9. JavaScript:String.search() 无法搜索 "[]"或 "()" - 2

    如果您尝试使用search()函数搜索诸如“[]”或“()”之类的字符串,它不会工作。functionmyFunction(){varstr="Visit[]W3Schools!";varn=str.search("[]");document.getElementById("demo").innerHTML=n;}您可以在-试用W3Schoolshttps://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_search搜索[]返回-1,搜索()返回0。总是。这是为什么? 最佳答案

  10. javascript - 未捕获的类型错误 : Cannot use 'in' operator to search for '0' in (jQuery) - 2

    我觉得这与AJAX调用有关。不太确定发生了什么。从技术上讲,该错误是在定义isArraylike(obj)函数的第584行的jQuery文件中抛出的。jQuery(document).ready(function(){varwidth_of_grams=$(window).width();varnew_pic_height=(width_of_grams/7);$("img.gram_photo").css('height',(width_of_grams)/7);$("#instafeed").css('height',2*new_pic_height);$(window).resi

随机推荐