来自mongodb的ElasticSearch索引?

时间:2013-12-02 11:16:09

标签: mongodb elasticsearch

我需要从mongodb创建索引。集合名称为Product,具有以下结构:

{
    "_id": ObjectId("5239656f60663de206b1053e"),
    "brand": "<brandName>",
    "category": {
        "$ref": "Category",
        "$id": ObjectId("50cb515760663d3577000043"),
        "$db": "<dbName>" 
     },
     "image": "<imageUrl>",
     "integraId": "<someId>",
     "isActive": <isActive>,
     "name": "<productName>",
     "slug": "<slug>" 
 }

集合Product有30 000多行,但弹性搜索仅索引约10 000行。 我的查询创建索引:

{
  "type": "mongodb",
  "mongodb": {
    "servers": [
      { "host": "127.0.0.1", "port": 27017 }
    ],
    "options": { 
        "secondary_read_preference": true
    },
    "db": "<dbName>",
    "collection": "Product"
  },
  "index": {
    "name": "test",
    "type": "test_type"
  }
}

还有第二个问题:我如何只索引某些字段(名称,类别(从其他集合中获取ID)和品牌?

2 个答案:

答案 0 :(得分:0)

您可以在Google网上论坛中关于它http://groups.google.com/group/elasticsearch/topics或在IRC http://www.elasticsearch.org/community/

中获得更多好运

答案 1 :(得分:0)

MongoDB在版本2.4中实验性地构建了全文搜索,如果您想要进行实验:http://docs.mongodb.org/manual/core/index-text/您可以更有效地查询。我意识到这与您正在寻找的弹性搜索解决方案不同,但这可能是解决问题的另一种方法。祝你好运!