当前位置: 首页 > 知识库问答 >
问题:

如何在ElasticSearch中拒绝“无效”文档

锺离刚洁
2023-03-14

我们目前正在使用Couchbase插件(transport Couchbase)将数据传输并索引到ElasticSearch中(http://docs.couchbase.com/couchbase-elastic-search/)

我在这里查看了ElasticSearch的映射文档:http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/mapping.html

我的理解是,如果您依赖ElasticSearch的默认值,一旦文档被索引,ElasticSearch将为该文档类型创建动态映射。这是我们默认的。

我们遇到了添加特定文档类型后以及传输插件插入“无效”文档(文档的字段类型现在不同于字符串-

 Caused by: org.elasticsearch.ElasticsearchIllegalArgumentException: unknown property 
 [xyz]
 java.lang.RuntimeException: indexing error MapperParsingException[failed to parse
 [doc.myfield]]; nested: ElasticsearchIllegalArgumentException[unknown property[xyz]] 

有没有办法配置ElasticSearch,以便在不引发异常和破坏复制的情况下简单地过滤“无效”文档?

谢谢

共有1个答案

方梓
2023-03-14
{
    "tweet" : {
        "dynamic": "strict",
        "properties" : {
            "message" : {"type" : "string", "store" : true }
        }
    }
}

http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/mapping-dynamic-mapping.html

 类似资料:
  • 问题内容: 我让ELK堆栈在VM内的docker容器中运行。 我可以向ES填充,它可以在Kibana中显示。 我可以使用Logstash读取文件并将其输出到stdout。 但是Logstash无法将数据发送到ES (启用或禁用xpack似乎没有什么不同) 输出 之后,它会在“发送批量请求”,“执行运行状况检查”,“尝试复活”和“意外的池错误”之间保持循环。 随着每一次的同时,我也看到了 问题答案:

  • 问题内容: 我已经在Ubuntu 14.04上安装了弹性2.2。我保留了elastic的默认初始设置,并且该实例可从localhost:9200到达该系统的弹性实例。 现在,当我尝试使用服务器的IP / DNS名称通过其他系统通过以下方式进行操作时: 我收到如下错误: 我尝试更改elasticsearch.yml文件中的几个参数并将其设置为: 但这并不能解决问题。我设置了与拒绝连接相同的错误。实际

  • 当我运行:时,存在这样的错误: 有人可以帮助我吗?

  • 我完成了批准/拒绝文件,但有一个问题 假设管理员登录时网格视图中有3个文档,只想批准/拒绝1个文档,即docid 81,然后单击提交按钮,然后将数据保存到数据库中 批准表 但在我的代码中,当管理员只批准/拒绝1个(即81个docid)文档,而管理员未在其他两个文档中工作时,则管理员单击提交按钮,然后其他两个文档数据也保存在批准(即79,80个docid)表中。。为什么会这样? 下面是提交按钮代码

  • 我尝试了所有命令来推送我的映像docker集线器,但失败了。每次我都遇到相同的问题 请帮帮我。。。。

  • 问题内容: 我已将代码移植到NEST 2.0和Elasticsearch 2.0 我需要找到一种方法来更新已经存储在ES2中的文档 我正在使用部分对象技术: 如何使用NEST2做同样的事情? 问题答案: 您传递文档ID的方式有些变化。 今天看起来像: 要么 希望能帮助到你。