【问题标题】:ElasticSearch and MongoDB弹性搜索和 MongoDB
【发布时间】:2013-09-16 17:12:06
【问题描述】:

我愿意使用 ElasticSearch 在 MongoDB 中运行全文查询。我找到了一些关于如何使用 this 设置 ElasticSearch 的指南,但我有几个问题。

1:我应该运行这个

curl -XPUT 'http://localhost:9200/_river/mongodb/_meta' -d '{ 
    "type": "mongodb", 
    "mongodb": { 
        "db": "testmongo", 
        "collection": "person"
    }, 
    "index": {
        "name": "mongoindex", 
        "type": "person" 
    }
}'

使 ElasticSearch 索引该集合。我需要多次运行它吗? (每次我的收藏更新?每天一次?)

2:是否完全支持分页和排序?我想搜索一些东西,但将结果限制为每页 N 个结果,并跳过一些页面。另外,我想按任何领域订购。

3:我的数据如下所示:

{
    question: 'text here', 
    date: '01/01/2000 01:01',
    title: 'Some title',
    client: 'name',
    assigned_to: ['name1', 'name2', 'name3'],
    answers: [
        {answer: 'bla bla'}, 
        {answer: 'bla bla'}, 
        {answer: 'bla bla'}
    ]
}

我可以在questiontitle 和所有answers 中搜索吗?

【问题讨论】:

    标签: javascript mongodb elasticsearch


    【解决方案1】:
    1. 不,您不需要在每次更新集合时都运行它。 根据配置中的刷新间隔或通过调用“_refresh”手动刷新索引

    2. 是的,支持分页,使用查询中的“from”、“size”、“sort”字段进行排序,请参阅

      ElasticSearch Pagination & Sorting

    3. 是的,您可以在任何领域进行搜索 请看http://www.elasticsearch.org/guide/reference/query-dsl/query-string-query/

    【讨论】:

    • 谢谢先生,这就是我开始使用 ES 所需要的一切:)
    猜你喜欢
    • 2014-06-06
    • 2017-03-31
    • 1970-01-01
    • 2018-01-10
    • 2011-11-19
    • 2021-11-23
    • 2020-12-11
    • 2017-01-20
    • 1970-01-01
    相关资源
    最近更新 更多