是否可以包含' _id'在' _source'在ElasticSearch中

时间:2015-06-04 22:07:45

标签: elasticsearch

通常ElasticSearch文档存储为:

{      
    "_index": "some_index",
    "_type": "some_type",
    "_id": "blah_blah",
    "_score": null,
    "_source": {
        "field_a" : "value_a",
        "field_b" : "value_b"
        ........
}

查询数据时是否可以在_source中包含_id?例如

{
    "_index": "some_index",
    "_type": "some_type",
    "_id": "blah_blah",
    "_score": null,
    "_source": {
        "_id": "blah_blah", // Added in the _source object
        "field_a" : "value_a",
        "field_b" : "value_b"
        ........
}

假设我无法控制我正在编写的数据,因此无法将其插入源代码中。此外,我可以读取整个对象并手动包含它,但想知道是否有办法通过ES查询这样做。

1 个答案:

答案 0 :(得分:0)

_id字段既没有索引也没有存储,这意味着它本身并不存在。 _type字段仅被索引,但不存储。 _id和_type都是elasticsearch的matedata,它们作为id#type(_uid)连接在一起。