1

我正在使用以下内容:

弹性搜索 - v0.90.9

MySQL 的 JDBC 连接器 - v5.1.28

ElasticSearch River – v2.3.1

我能够使用 ElasticSearch 构建和查询索引数据。上述版本安装在 Ubuntu 12.04 LTS 虚拟机上,ElasticSearch 作为服务运行,该服务在系统重启后自动启动。

假设当没有索引并且我使用 ElasticSearch River 构建新索引并发出 PUT 命令来构建索引时,索引已构建并且一切正常。现在,问题是当我关闭虚拟机并再次重新启动它时,该索引会再次重建。我觉得这很烦人,有没有办法防止自动重建索引?

是否应该注意 ElasticSearch River 或 ElasticSearch 设置以防止自动索引重建?就我而言,这会导致重复。

提前致谢。

4

1 回答 1

0

我发现阻止它重新索引的唯一方法是在河流文档运行后删除它。

但是,如果您遇到的问题是文档重复,那么您需要做的是识别一个 id 字段。有两种方法可以做到这一点,要么导入带有标记为“_id”的字段的数据,要么在为该索引创建映射时标识一个 id 字段,该索引标识 id 字段,如下例所示。

PUT my_index
{
    "settings": {
        "number_of_shards": 1,
        "number_of_replicas": 3
    },
    "mappings": {
        "my_type": {
            "properties":{
                "field1": { "type": "string", "analyzer": "keyword" }
        },
        "_id": { "path": "field1" }
    }
}
于 2014-02-27T23:37:04.293 回答