在elasticsearch中使用现有字段作为id

chr*_*hri 6 elasticsearch

刚开始使用elasticSearch.我想知道是否可以设置某种全局参数来使用文档中的某个字段作为ID总是?

我的JSON文档将始终拥有自己的唯一ID

{
  "Record ID": "a06b0000004SWbdAAG",
  "System Modstamp": "01/31/2013T07:46:02.000Z",
  "body": "Test Body"
}
Run Code Online (Sandbox Code Playgroud)

在这里,我想使用记录ID作为ID字段.

问候

Jam*_*s R 1

您想使用路径设置,请参阅此处的文档:

http://www.elasticsearch.org/guide/reference/mapping/id-field/

具体来说,这样的东西应该在您的映射中起作用:

{
    "your_mapping" : {
        "_id" : {
            "path" : "Record ID"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

不过,我从未尝试过将变量名分开。如果遇到奇怪的情况,您可能需要使用驼峰式或下划线。

  • 请注意,它在 elasticsearch 1.5 中已弃用,请参阅 https://github.com/elastic/elasticsearch/issues/6730 了解更多详细信息 (10认同)
  • 还有其他选择吗? (5认同)