ElasticSearch ID 约束

24

对于ElasticSearch文档ID,是否存在任何字符约束或限制?

我很想知道正斜杠'/'是否会造成问题?我有一些新闻源,我想要进行索引。问题是包含此数据的数据库将UID设置为新闻源URL。不要问我为什么它被设计成这样,因为我一点都不清楚。

我想要使用相同的标识符(URL)作为ElasticSearch文档。我已经成功地使用了GUID、字母数字和数字字符而没有出现问题。

如果不行,最好的解决方法是什么-应该对整个URL进行编码吗?

谢谢

2个回答

23

没有任何限制。可以使用正斜杠。但是为了在REST API中使用这样的ID,它必须进行URL编码:

$ curl -XPUT "localhost:9200/id-test-index/rec/1+1%2F2" -d '{"field" : "one and a half"}'

这是我在太多的折腾后发现的结果..谢谢! - Gabbar
实际上,在早期版本的Elasticsearch中(大约v1.7左右),如果在_id中使用冒号或下划线,某些聚合计算将无法正确计算。 - WoodyDRN

1

11
新来的访客:这个问题已经在很久以前被修复了。 - glaed

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接