这是我的映射:
"mappings" : {
"mytype" : {
"_meta" : {
"abs_parent_id" : {"type" : "integer"}
},
"properties" : {
"title" : {"type" : "text"},
"body" : {"type" : "text"},
"tagnames" : {"type" : "text"},
"nodetype" : {"type" : "text"},
"author_id" : {"type" : "integer"},
"author_name" : {"type" : "text"},
}
}
}
我希望这是我做http://localhost:9200/myindex/mytype/_search?pretty时的回复:
"hits" : [
{
"_index" : "myindex",
"_type" : "mytype",
"_id" : "1",
"_score" : 1.0,
"_meta" : {
"abs_parent_id" : null
},
"_source" : {
"body" : "<p>Some statement</p>",
"tagnames" : "tag",
"title" : "question",
"author_name" : "author",
"node_type" : "question",
"author_id" : 1000
}
},
但我把它作为回应:
"hits" : [
{
"_index" : "myindex",
"_type" : "mytype",
"_id" : "1",
"_score" : 1.0,
"_source" : {
"_meta" : {
"abs_parent_id" : null
},
"body" : "<p>Some statement</p>",
"tagnames" : "tag",
"title" : "question",
"author_name" : "author",
"node_type" : "question",
"author_id" : 1000
}
},
我需要在_source之外有_meta字段,以便我可以在我的查询上禁用_source,这将节省内存。有人可以提出解决方案吗?
Aren所有以下划线开头的字段都应该在_source之外?
旁注:我不认为这是相关的,但是我用elasticsearch-py来做这一切。
答案 0 :(得分:1)
这不是元字段的用途。 mapping中配置的元字段不是搜索响应的一部分,它们只包含索引元数据中的附加信息,就是它 - 与元字段的查询(甚至是数据)没有任何交互
此外,您对带下划线的字段的假设是错误的。它们被视为常规字段。