Ruby on rails elasticsearch:搜索多个字段的最佳性能?
我们正在使用elasticsearch和rails,使用retire gem。目前,我们索引了大量字段(30+),其中只有6个字段当前可全文搜索(用户名、用户电子邮件、用户标题等) 我们希望朝着所有领域都可搜索的方向发展。因此,不只是这6个主要字段是可搜索的,所有30个(可能更多)都是可搜索的。所谓可搜索,我指的是精确匹配、前缀、模糊匹配和子字符串匹配 我们正在考虑两种战略: 1) 使用正确的分析器和标记器(已经计算出该部分)分别为每个字段编制索引,以满足所需的可搜索性要求 2) 创建所有其他字段的索引文本blob,并将该blob作为一个整体进行索引 我很好奇上述两种解决方案的权衡是什么。我们正在寻找: 1) 良好的写入性能。我们的对象经常变化(这是一个带有配置文件的可搜索用户索引) 2) 随着时间的推移,向索引添加新字段的难度越来越大Ruby on rails elasticsearch:搜索多个字段的最佳性能?,ruby-on-rails,
elasticsearch,lucene,tire,Ruby On Rails,
elasticsearch,Lucene,Tire,我们正在使用elasticsearch和rails,使用retire gem。目前,我们索引了大量字段(30+),其中只有6个字段当前可全文搜索(用户名、用户电子邮件、用户标题等) 我们希望朝着所有领域都可搜索的方向发展。因此,不只是这6个主要字段是可搜索的,所有30个(可能更多)都是可搜索的。所谓可搜索,我指的是精确匹配、前缀、模糊匹配和子字符串匹配 我们正在考虑两种战略: 1) 使用正确的分析器和标记器(已经计算出该部分)分别为每个字段编制索引,以满足所需的可搜索性要求 2) 创建所有其他字
3) 当然,请阅读性能。您的用户可以定义自定义字段吗?如果是这样的话,您应该在这里查看关于键/值问题的部分:@AlexBrasetvik我们不允许用户定义自定义字段,尽管有一个包含字符串数组的“label”字段。