问题标签 [thinking-sphinx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 使用 Rails 2.3.5 运行 Thinking Sphinx 时出现问题
我刚刚安装了 Sphinx(发行版:archlinux)下载源代码。然后我为 Rails 安装了“Thinking Sphinx”插件。
我遵循了官方页面设置和Ryan Bates 的这个截屏视频,但是当我尝试索引模型时,它给了我这个错误:
我尝试手动启动守护进程(/usr/bin/sphinx-searchd),更改 config/sphinx.yml 文件:
但它显示了同样的错误,有什么想法吗?
ruby-on-rails - 思考狮身人面像,has_one 关联
请任何人帮助我进行 Thinking_sphinx 配置。我有表 profile1,其中有一个 profile2 和 profile3。所以我只需要索引它们,但我不能。我试过了
我做错了什么?谢谢。
ruby-on-rails - 思考狮身人面像,复杂排序 - 我如何将扩展排序与 expr 排序结合起来?
我想按表达式排序,然后按某个属性升序,然后按另一个属性升序。像这样的东西::order => "(a < some constant) desc, b asc, c asc"
。如何得到它?
扩展排序由于<
. 由于逗号,Expr 失败。
我已经设法产生:order => "(a < some constant) desc, b desc"
与 with等效的排序:order => "(a < some constant)", :sort_mode => :expr, :sort_by => :b
,但我不能c
向该排序添加另一个属性 (),也不能将排序模式更改为b
asc。
mysql - 是否可以在动态条件下使用 Sphinx 搜索?
在我的网络应用程序中,我需要在items
具有以下条件的表上执行 3 种类型的搜索:
items.is_public = 1
(使用title
字段进行索引) - 可以检索到很多结果(基数比其他情况高得多)items.category_id = {X}
(使用title
+private_notes
字段进行索引) - 通常少于 100 个结果items.user_id = {X}
(使用title
+private_notes
字段进行索引) - 通常少于 100 个结果
我找不到让 Sphinx 在所有这些情况下都能正常工作的方法,但在第一种情况下效果很好。我是否应该仅在第一种情况下使用 Sphinx 并在 MySQL 中使用普通的旧“慢”全文搜索(至少因为 2-3 种情况下的基数较低)?
还是只有我和斯芬克斯几乎可以做所有事情?
mysql - 如何将文本搜索限制在数据库的某个子集?
我有一个包含大约 100 万条重记录的大型中央数据库。在我的应用程序中,对于每个用户,我都会有来自中央表的行子集,这将非常小(每个可能有 100 条记录)。当特定用户登录时,我只想搜索这个数据集。例子:
假设我有一个世界上所有汽车的中央数据库。我有通用汽车(GM),法拉利等的用户资料。当通用汽车登录时,我只想搜索(全文搜索而不是触发 sql 查询)那些由通用汽车制造的汽车。此外,GM 可能会启动/撤回模型,在这种情况下,中央数据库将被更新,因此与 GM 关联的行集也将被更新。在收购的情况下,某些配置文件的数据库可能会在没有推出/拆除新车的情况下发生变化。所以中央数据库不会改变,但行集可能。
实现这种设计的最佳方法是什么?这些较小的行集需要是动态的,具体取决于用户活动。
我们在 Rails 2.3.5 上,使用 thinking_sphinx 作为连接器,使用 Sphinx/MySQL 进行搜索和关系关联。
ruby-on-rails - 用日期范围思考狮身人面像
我正在为我的 Rails 应用程序实现一个全文搜索 API,到目前为止,Thinking Sphinx 取得了巨大的成功。
我现在想实现日期范围搜索,并不断收到“范围错误”错误。
这是控制器代码的片段,我有点不知道下一步该做什么。
当我查看日志时,我看到这一位似乎暗示日期尚未转换为与 Time.now.utc 相同的时间格式。
有任何想法吗?基本上,我试图让 API 请求在“自”日期传递,以查看某个日期之后的所有帖子。我指定日期应为 YYYY-MM-DD 格式。
谢谢你的帮助。克里斯
编辑: 我刚刚将日期参数合并语句更改为此
@search_options.merge!(:with => {:post_date => d.to_date..DateTime.now})
现在我得到这个错误
2010 年 5 月 25 日星期二的未定义方法“to_i”:日期
所以显然有些东西仍然没有设置正确......
mysql - 思考狮身人面像不按“相关性”的顺序呈现结果
Thinking sphinx 文档说它会根据相关性自动对结果进行排序。它的相关性指标是什么?我们如何为系统定义我们自己的相关性指标?
示例:我有一个数据库,其中一个条目是 Windows XP,它包含对 Microsoft 的引用。我也有一个 Microsoft 本身的条目。因此,当我查询 Microsoft 时,我应该先获得 Microsoft 结果,然后再获得 XP 结果。但我首先得到 XP 结果,然后是 Microsoft。
任何帮助将不胜感激。:)
ruby-on-rails - 思考狮身人面像和缺乏更新的记录
我们正在服务器集群中的一个实用程序实例上运行 Thinking sphinx。它每分钟重新运行一次索引。但是,如果您对记录进行更改,它会从搜索结果中消失,直到索引更新(最多 1 分钟)。
Thinking Sphinx 是否只返回 update_at 时间少于其最后一个索引的行?
如果是这样,我如何获得数据库更改以更新实用程序实例上的 TS?
sphinx - 找不到 sphinx.yml 文件
我正在使用 mysql 作为数据库方案运行 rails 2.2.3,并将 sphinx 作为插件安装。我有两个问题:
1) 我找不到文件 confing/sphinx.yml。我只有一个 config/development.sphinx.conf 2) 我已经从模型的 define_index 方法中指定了 min_infix_len 和 enable_start 属性。我还检查了 development.sphinx.conf 文件,并且这些属性在那里正确设置。但我没有得到任何中缀搜索结果。
请帮忙。
indexing - Thinking Sphinx - 即使使用了增量索引也显示误报
这可能与 Sphinx 而不是 Thinking Sphinx 有关。
我正在使用增量索引。
- 假设一条记录的文本字段包含单词“foo”
- 完整索引已完成
- 从记录中删除单词“foo”
- 增量索引已完成
- 搜索“富”
- 上面的记录即使不包含单词 'foo' 也会返回
- 预期结果:不应返回以上记录。
如果增量索引中存在相同的记录,我不确定这是否是配置问题,告诉 sphinx 忽略主索引中的记录。
更新:有人可以对此做出回应吗?