0

我正在使用 elasticsearch 0.90.2 和 elasticsearch-river-mongodb 1.7.0 从 mongodb 的 oplog 中检索数据。在我试图索引的集合中,我有数千条结构化记录,让我们将它们命名为“field1”、“field2”、“field3”...“field10”

有没有办法只索引 'field1' 和 'field2' ?这些是字符串还是日期对象有关系吗?

谢谢

4

1 回答 1

1

我从未使用过河流插件,但我知道的一件事是您可以通过映射或模板控制字段的索引。对于每个字段,您可以在映射或模板中将属性“索引”指定为三个不同的选项:analyzed、not_analyzed、no。这是官方文档。

在使用分析器将其分解为标记后,设置为要对要索引和可搜索的字段进行分析。not_analyzed表示它仍然可以搜索,但不经过任何分析过程或分解为标记。no意味着它根本不可搜索(作为单个字段;它可能仍包含在 _all 中)。设置为no会禁用 include_in_all。默认为已分析。

如果您希望您的字段仍然可搜索,请选择“not_analyzed”,否则选择“no”。字段的类型应该无关紧要。

这是来自官方网站的映射示例

{
    "tweet" : {
        "properties" : {
            "user" : {"type" : "string", "index" : "not_analyzed"},
            "message" : {"type" : "string", "null_value" : "na"},
            "postDate" : {"type" : "date"},
            "priority" : {"type" : "integer"},
            "rank" : {"type" : "float"}
        }
    }
}
于 2013-07-17T00:08:50.937 回答