📣 极限科技诚招搜索运维工程师(Elasticsearch/Easysearch)- 全职/北京 👉 : 立即申请加入

版本: 7.8-7.15

简而言之,当您尝试在Elasticsearch中索引超过二维的字段时,会发生此错误。Elasticsearch仅支持一维或二维的字段。要解决此问题,您可以在索引之前将数据结构展平至二维或更低,或者将数据拆分为多个字段,每个字段包含二维或更少的数据。另一个选项是将多维数据序列化为JSON或base64等格式,并将其存储为字符串字段。

日志上下文 #

日志"[{}}] field type does not accept > 2 dimensions"的类名是 CartesianPoint.java。 我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入上下文的人参考:

if (element == 1) {
 x = subParser.doubleValue();
 } else if (element == 2) {
 y = subParser.doubleValue();
 } else {
 throw new ElasticsearchParseException("[{}}] field type does not accept > 2 dimensions";
 PointFieldMapper.CONTENT_TYPE);
 }
 } else {
 throw new ElasticsearchParseException("numeric value expected");
 }