#일래스틱서치 탄생
처음에는 MVEL 지원
(얼마 못가 지원하지 않음)
#일래스틱서치 1.4
MVEL에서 그루비로 대체
# 일래스틱서치 1.5
MVEL은 1.5 버전부터 마침내 제거되었다.
# 일래스틱서치 5.0
일래스틱서치 5.0버전부터 그루비 스크립팅 언어가 Deprecated되었고 5.0 향후 버전에서 제거될 것이다. 그루비는 새로운 언어인 Painless로 대체되었다. 그루비를 계속 사용할 수 있지만 elasticsearch.yml 파일에서 동적 스크립팅을 활성화해야 한다. Painless을 사용하기 위한 추가 설정이 필요하지 않다.
일래스틱서치는 그루비, 파이썬 뿐 아니라 자바스크립트의 언어 플러그인을 지원했었다. 일래스틱서치 5.0.0 버전부터 기존 언어의 플러그인은 사용 중단되었고 Painless으로 대체되었다.
- Painless 예제
* Groovy와 비슷하게 생겼다.
def sum = 0
def listOfValues = [0, 1, 2, 3]
def sum = 0;
for (def i = 0; i < 10; i++) {
sum += i;
}
def sum = 0;
for ( i in [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] ) {
sum += i;
}
def i = 2;
def sum = 0;
while (i > 0) {
sum = sum + i;
i--;
}
def year = doc[\"year\"].value;
if (year < 1800) {
return 1.0
} else if (year < 1900) {
return 2.0
} else {
return year - 1000
}
'Elasticsearch' 카테고리의 다른 글
[elasticsearch5] phrase 쿼리에 사용할 수 있는 3가지 스무딩(smoothing) 모델 (0) | 2017.07.29 |
---|---|
[elasticsearch5] 집계 (aggregation) 성능 향상 (0) | 2017.07.26 |
[elasticsearch5] 삭제된 api 확인하기 (0) | 2017.07.24 |
[elasticsearch5] 축소(shrink) api 예제 (0) | 2017.06.19 |
[일래스틱서치5] 트라이브(tribe) 노드는 7.0부터 사라질 예정 (0) | 2017.06.12 |