elasticsearch 通过解析_源文档中的字段来设置_id,elasticsearch,mapping,elasticsearch,Mapping" /> elasticsearch 通过解析_源文档中的字段来设置_id,elasticsearch,mapping,elasticsearch,Mapping" />

elasticsearch 通过解析_源文档中的字段来设置_id

elasticsearch 通过解析_源文档中的字段来设置_id,elasticsearch,mapping,elasticsearch,Mapping,假设我有这样的文档: { "url": "http://example.com/blog/title-of-some-blog-post", "author": "John Smith" } 假设我有一个名为blog的ElasticSearch索引,其中有一个名为post的类型。此类型保存与上面类似的文档。我希望上面文档的\u id是某篇博客文章的标题。我的类型映射应该是什么样子 到目前为止,我已经能够使\u id与url字段相同,但这意味着\u id也包含“”,我希望省略它。我用来实

假设我有这样的文档:

{
  "url": "http://example.com/blog/title-of-some-blog-post",
  "author": "John Smith"
}
假设我有一个名为
blog
的ElasticSearch索引,其中有一个名为
post
的类型。此类型保存与上面类似的文档。我希望上面文档的
\u id
是某篇博客文章的
标题
。我的类型映射应该是什么样子

到目前为止,我已经能够使
\u id
url
字段相同,但这意味着
\u id
也包含“”,我希望省略它。我用来实现这一点的映射是:

"post": {
  "_id": {
    "type": "string",
    "path": "url"
  }

是否有某种方法可以将正则表达式应用于
url
字段,以便我可以提取
\u id
最右边斜杠后的所有内容?

没有现成的方法可以根据实际字段动态生成字段。虽然功能中可能会有类似的功能,但现在您只需要添加一个包含所需内容的字段,或者最好在文档之外提供id。后者会更好,因为
\u id
字段用于决定将文档发送到何处,如果它是文档的一部分,则需要对文档进行解析,以便知道它们应该发送到何处