2016-07-13 3 views
3

Elasticsearch에서 새로 생성 된 인덱스로 best_compression으로 기본 압축 방법을 설정하는 방법이 있습니까?Elasticsearch 인덱스로 압축

인덱스 생성 후 수동으로 수행 할 수 있습니다.

Google 검색에 따르면이 속성은 elasticsearch.yml에 설정하거나 맞춤 템플릿을 만들어 설정해야합니다. 그러나, 나는 그것을 elasticsearch.yml에서 바로 얻을 수 없었다. 모든 종류의 변형을 시도했지만 기본적으로 이렇게해야합니다.

index.codec: best_compression 

그러나 그렇게하지는 않습니다.

또한 특정 템플릿을 사용하여 만든 것뿐만 아니라 모든 인덱스에이 압축을 적용하는 것이 목표이기 때문에 사용자 지정 템플릿을 만드는 데 익숙하지 않습니다. 하지만 그것이 유일한 방법이라면 그렇게 할 수 있습니다.

나의 사용 사례는 Logstash가있는 Elasticsearch이므로 Logstash는 이러한 색인을 생성 한 것입니다. 사용자 정의 템플릿이 없으면 Logstash 구성에서 압축 방법을 설정하는 것이 완전히 불가능한 것처럼 보입니다. Elasticsearch 버전 2.2.0을 실행 중입니다.

현재 내가 인덱스를 닫고 실행 한 후 수동으로 잘 압축 설정할 수 있습니다

curl -XPUT 'http://localhost:9200/example_index/_settings' -d '{"index":{"codec":"best_compression"}}' 

을 그리고 인덱스를 재개.

공식 문서에서

: 기본값 LZ4 압축 데이터를 저장 압축하여

index.codec 

있지만 느리게의 비용으로, 높은 압축률 DEFLATE을 사용하는 best_compression 설정 될 수 저장된 필드 성능.

출처 : https://www.elastic.co/guide/en/elasticsearch/reference/current/index-modules.html

답변

3

index.codec 설정은 노드 레벨 설정입니다, 그것을 새로운 인덱스 설정 목록에 표시되지 않습니다. 인덱스 템플리트가 인 경우codec으로 설정하면 해당 템플리트가 사용됩니다. 그렇지 않으면 노드 레벨의 템플리트가 사용됩니다.

또한 인덱스의 코덱을 변경할 때 새 세그먼트 (새 인덱싱 후 기존 문서 또는 세그먼트 병합 변경) 만 새 코덱을 사용합니다.

+0

그래, 나는 코덱 변경이 소급 적용되지 않는다는 것을 알고 있었지만 변경된 코덱이 노드 수준에서 완료되면 색인 설정에 표시되지 않는다는 사실을 실제로 알지 못했습니다. 그러나 예, 그것은으로 보이는 노드 설정에 표시 않습니다 '컬 -XGET '에 http : // localhost를 : 9200/_nodes 팁을위한 꽤 = true'' 그래서 감사?. :) – empe