ElasticSearch删除文档中的属性

解决Caused by: ScriptException[scripts of type [inline], operation [update] and lang [groovy] are disabled

因为需要使用script对文档进行update,因此需要在elasticsearch的安装目录中修改elasticsearch.yml($ES_HOME/config/elasticsearch.yml)配置文件,允许使用script修改文档,在配置文件elasticsearch.yml中添加如下内容:

script.inline: true
script.indexed: true

之后介绍如何删除文档中的属性,其中index、type、id、name_of_field四个字段需要按自己的需求进行修改:

方法一:使用curl
curl -XPOST 'localhost:9200/index/type/id/_update' -d '{
    "script" : "ctx._source.remove(\"name_of_field\")"
}'
方法二:使用JAVA
client.prepareUpdate("index", "type", "id").setScript(new Script("ctx._source.remove(\"name_of_field\")", ScriptService.ScriptType.INLINE, null, null)).get();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值