script에서 필드 접근 방법은 최소 두가지가 있다. doc 문맥과 _value 이다.
(아직 일래스틱서치 공부중이므로 찾아보면 더 있을 수는 있다.)
일반적으로 일래스틱서치의 script를 사용할 때, doc라는 문맥을 사용하여 필드에 접근하는 방법이 있다.
"script_fields" : { "test1" : { "script" : "doc['my_field_name'].value * 2" }, "test2" : { "script" : "doc['my_field_name'].value * factor", "params" : { "factor" : 2.0 } } }
출처 : https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-script-fields.html
https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-script-fields.html
aggregation시에는 doc 문맥을 사용하지 않고, _value를 사용하는 스크립트가 있다.
{ "aggs" : { ... "aggs" : { "daytime_return" : { "sum" : { "field" : "change", "script" : "_value * _value" } } } } }
'Elasticsearch' 카테고리의 다른 글
[elasticsearch] ctx 하위 필드 설명 (0) | 2015.07.20 |
---|---|
[elasticsearch] Source 필터링 이해하기 (0) | 2015.07.10 |
[elasticsearch] sub aggregation의 개수 제한이 있을까? (0) | 2015.07.04 |
[elasticsearch] copy_to 용법 (0) | 2015.07.04 |
[elasticsearch] 색인(index) 변경을 별명(alias)로 이용하는 방법 (0) | 2015.07.01 |