我使用mongo河將mongodb集合綁定到彈性搜索。如何忽略mongodb和elasticsearch中的某些字段?
這導致mongo集合中的每個字段都將保存在elasticseach索引中。
我想知道如何忽略一些字段,不要讓它保存在彈性索引中。
我使用mongo河將mongodb集合綁定到彈性搜索。如何忽略mongodb和elasticsearch中的某些字段?
這導致mongo集合中的每個字段都將保存在elasticseach索引中。
我想知道如何忽略一些字段,不要讓它保存在彈性索引中。
設置mongodb河時,您可以排除某些域,例如
"mongodb": {
"db": "YourDbName",
"collection": "YourCollectionName",
"options": {
"exclude_fields": "name_of_field_to_be_ignored"
}
},
我從河蒙戈維基獲得另一種方法。通過使用腳本,您可以自定義..但是,您應該在elasticsearch.yml中將禁用腳本設置爲false。
https://github.com/richardwilly98/elasticsearch-river-mongodb/wiki
$ curl -XPUT "localhost:9200/_river/mongoscriptfilter/_meta" -d'
{
"type": "mongodb",
"mongodb": {
"db": "testmongo",
"collection": "documents",
"script": "ctx.document.title = ctx.document.title_from_mongo; delete ctx.document.title_from_mongo;"
},
"index": {
"name": "testmongo",
"type": "documents"
}
}'
感謝。如果有像(a,b,c)這樣的字段,那麼使用「exclude_fields」:「a,b,c」或「exclude_fields」:[「a」,「b」,「c」],這是否正確? – navins
列表是你的答案: [ES River MongoDB示例](https://github.com/richardwilly98/elasticsearch-river-mongodb/blob/master/manual-testing/issues/76/mongodb-river-simple.json) – Jovik