我有一个名为" animals"在弹性搜索中。它包含几个类型"狗"的文件。 我想删除所有"狗"动物中的文件"指数。我正在使用python elasticsearch包。 我的python代码如下:
connection = Elasticsearch([{"host": "myhost", "port": "myport" } ])
body = {} # What should I put in the body???
connection.bulk(body, index="animals", doc_type="dogs", ignore=[400, 404])
在这里,我不知道我需要在body
中放入什么。任何人都可以帮助我吗?
批量方法在https://github.com/elastic/elasticsearch-py/blob/master/elasticsearch/client/init.py#L1002
定义答案 0 :(得分:0)
elasticsearch-py
中没有api删除所有类型的文档。这是因为Elasticsearch 2.x以后没有api来删除type
。
来自documentation
在1.x中可以删除一个类型 映射,以及该类型的所有文档,使用 删除映射API。这不再受支持,因为残余 类型中的字段可能保留在索引中,从而导致损坏 以后。
相反,如果您需要删除类型映射,则应重新索引到a 新索引,不包含映射。如果你只是需要 删除属于该类型的文档,然后使用 而是逐个删除插件。