02 2월 2016 출시

Elasticsearch 2.2.0, 2.1.2 및 1.7.5 출시

By Clinton Gormley

Elasticsearch 2.2.0 (Lucene 5.4.1 기반) 릴리스, Elasticsearch 2.1.2의 버그 수정 릴리스, Elasticsearch 1.7.5가 출시되었습니다. 이들 새 릴리스는 Elasticsearch 서비스형 플랫폼 Found를 통해 이미 제공되고 있습니다. 또한 이번 주에는 최신 버전의 Kibana, Logstash, BeatsElasticsearch-Hadoop도 출시되었습니다.

Elasticsearch 2.2.0에는 쿼리 프로파일러와 대폭 향상된 위치(geo-point) 필드의 두 가지 새로운 기능이 포함되어 있습니다. 또한 보안이 강화되었으며 Elasticsearch 2.1.0에서 샤드 복구를 느리게 만들었던 버그에 대한 주요 수정이 다른 버그 수정 및 향상된 기능과 함께 포함되어 있습니다.

모든 사용자에게 업그레이드를 권장합니다.

안정적인 최신 릴리스:

2.1의 버그 수정:

1.7.5의 버그 수정:

프로필 API

이제 Lucene과 Elasticsearch 사상 최초로, 자세한 쿼리 프로파일링 정보에 액세스하여 쿼리 성능을 파악하고 디버깅할 수 있게 되었습니다. 쿼리의 각 부분은 개별적인 시간 기준이며 쿼리 재작성, 일치하는 도큐먼트 검색, 점수 부여에 소요되는 시간 등 통계를 기록합니다. 이제부터 특정 쿼리가 느린 이유를 추측할 필요가 없습니다. profile 파라미터를 true 로 설정하기만 하면 심층적인 통찰력을 즉각 얻을 수 있습니다.

쿼리 프로필 API가 아닌 프로필 API로 불리우는 이유가 무엇일까요? Elastic은 어그리게이션뿐만 아니라 추천 검색어(Suggester)와 하이라이터(Highlighter)까지 포함하도록 이 기능을 확대할 예정이기 때문입니다.

자세한 내용은 프로파일 API 도큐먼트를 참조하십시오.

강력한 위치 필드

Lucene 인덱스에 저장된 새로운 압축 데이터 구조를 활용하기 위해 위치 필드(Geo-point field)가 새롭게 재작성되었습니다. 이에 따라 인덱스 처리 속도가 50% 빨라지고, 위치 쿼리 속도가 20-50% 빨라지고, 디스크 및 힙(Heap) 사용량이 절반으로 줄어들고, 매핑 옵션이 간단해졌습니다. 새 위치 필드가 새로운 기능을 자동으로 활용하는 반면, 기존 위치 필드는 이전과 마찬가지로 계속 작동합니다.

향상된 위치 기능에 대한 자세한 내용은 Elasticsearch 2.2의 강력한 위치 필드에 나와 있습니다.

plugin과 스크립팅 보안 강화

Elasticsearch의 보안을 최대한 강화하려는 노력의 일환으로 Groovy 및 Lucene Expressions 스크립팅 언어가 코어에서 제외되어 이제 기본적으로 제공되는 plugin인 module로 배포됩니다. 이를 통해 이들 module에 제공된 권한을 제한하여 해커의 공격 범위를 줄일 수 있게 되었습니다. 이후 버전에서는 Elasticsearch 코어의 더 많은 부분이 모듈화될 예정입니다.

이제 스크립팅 언어에 로드가 허용되는 클래스의 화이트리스트가 사전 정의되어 있습니다. 스크립트가 파일을 읽고 쓰거나 원격 서버에 소켓을 열어서는 안 되기 때문입니다! 화이트리스트 사용자 지정 방법은 스크립팅 및 Java Security Manager에 자세히 나와 있습니다.

기본적으로 허용되지 않는 특수 권한을 요구하는 plugin은 해당 권한을 선언해야 하며, 플러그인 설치 시 이러한 요구 사항이 경고 메시지로 나타납니다. 이에 따라 mapper-attachments 플러그인을 2.2용 Elasticsearch 기본 리포지토리로 옮길 수 있었습니다.

결론

Elasticsearch 2.2.0을 다운로드하여 사용해 보시고 당사 트위터(@elastic)또는 포럼에 의견을 남겨주시기 바랍니다. 발견되는 문제는 GitHub 문제점 페이지에 보고하실 수 있습니다.