doc和params之间的[eslessless]差异。

时间:2019-03-18 11:07:43

标签: elasticsearch-painless

使用doc [“ abc”]时,发现没有字段“ abc”例外,只是找到params._source [“ abc”]会使所有内容正确。

我检查了doc [“ abc”]。value的状态,它显示为null,也显示了doc [“ abc”]。empty为true。

1.elasticsearch版本:5.x

2。使用无痛的内联排序脚本

任何人都可以弄清楚是什么。发生了吗?

1 个答案:

答案 0 :(得分:0)

根据使用脚本的位置,它可以访问某些特殊变量和文档字段。我不知道您的映射,但我认为此链接将回答您的问题-Accessing document fields and special variables

要通过以上链接进一步引用:

  

文档值和文本字段

     

doc ['field']语法也可以用于分析的文本字段,如果   字段数据已启用,但请注意:在文本字段上启用字段数据   需要将所有术语加载到JVM堆中,这可能非常   就内存和CPU而言都是昂贵的。很少有意义   从脚本访问文本字段。

     

Doc值是列式字段值存储,默认情况下,所有   字段,但分析的文本字段除外。

     

_source 提供了对原始文档主体的访问,   索引(包括区分空值和空值的能力   字段,普通标量的单值数组等)。

如果您的字段doc是经过分析的文本字段或对象,则 special_county <- c("Butte", "Los Angeles", "Fresno") ggplot(data=sample, aes(x=str,y=testscr))+ geom_smooth(method="lm") + geom_point(data = function(x) subset(x, !county %in% special_county)) + geom_point(data = function(x) subset(x, county %in% special_county), aes(color = county)) 无效。