【问题标题】:ElasticSearch suggestions on blog name, authors and tags关于博客名称、作者和标签的 ElasticSearch 建议
【发布时间】:2018-02-08 12:48:31
【问题描述】:

我一直在到处寻找我的问题的好答案,但我找不到任何... 我将 ElasticSearch 与 Laravel 一起使用。我在另一个项目中使用过 ElasticSearch,但从未使用过建议。我正在关注本教程,因为我认为它为使用 Laravel 和 ElasticSearch 提供了一个很好的起点:https://blog.madewithlove.be/post/how-to-integrate-your-laravel-app-with-elasticsearch/

我的问题是关于建议;我希望我的搜索像你在 Spotify 上找到的那样,是一种随你输入的搜索。我希望我的用户在搜索框中输入几个字母,然后将结果分为多个类别:博客、作者、标签。

如果我将我的数据索引到一个索引中,作者和标签是博客的嵌套对象,我可以使用完成建议器轻松获得博客名称的建议,但不适用于嵌套对象。我还可以将每个模型和索引数据分别拆分为不同的索引,但这意味着我必须进行 3 次查询才能获得结果。

我做错了吗?我应该以不同的方式构建数据吗?是进行 3 次查询还是有办法让单个查询输出来自不同索引的搜索结果?

谢谢!

泽维尔

【问题讨论】:

    标签: laravel elasticsearch


    【解决方案1】:

    我在构建“键入即搜索”时所做的事情是使用单独的索引来获取建议。在您的情况下,您将在一个字段中索引名称(标题、作者等),在另一个字段中索引类型。然后你可以搜索一个字段并显示分组结果。

    这里的优势是速度。这可能比尝试对嵌套数据进行建议要快得多。 (您可能可以这样做,但我不确定如何。)速度对于此类功能非常重要。

    【讨论】:

    • 谢谢,这很有意义!我将为您的示例添加一个“链接”字段,它应该是完美的!您的答案是您在文档中找不到的那种想法,这太可惜了。
    猜你喜欢
    • 2015-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-23
    • 2012-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多