# Compress ELK data node

**URL:** <https://discuss.elastic.co/t/compress-elk-data-node/60230>\
**Category:** Elasticsearch\
**Created:** [September 11, 2016, 6:28am UTC](https://discuss.elastic.co/t/compress-elk-data-node/60230 "2016-09-11T06:28:54Z")\
**Posts on this page:** 15\
**Page:** 1

<div class="post-metadata">

**Author:** ![asafi31](https://avatars.discourse-cdn.com/v4/letter/a/b38774/32.png) [@asafi31](https://discuss.elastic.co/u/asafi31)\
**Post date:** [September 11, 2016, 6:28am UTC](https://discuss.elastic.co/t/compress-elk-data-node/60230/1 "2016-09-11T06:28:54Z")

</div>

hello all

there is option in node level or index level to configure  
elasticsearch data compress

thx  
asaf

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [September 11, 2016, 6:59am UTC](https://discuss.elastic.co/t/compress-elk-data-node/60230/2 "2016-09-11T06:59:43Z")

</div>

Look at [https://www.elastic.co/guide/en/elasticsearch/reference/2.4/index-modules.html#\_static\_index\_settings](https://www.elastic.co/guide/en/elasticsearch/reference/2.4/index-modules.html#_static_index_settings)

```
index.codec
```

---

<div class="post-metadata">

**Author:** ![asafi31](https://avatars.discourse-cdn.com/v4/letter/a/b38774/32.png) [@asafi31](https://discuss.elastic.co/u/asafi31)\
**Post date:** [September 11, 2016, 7:14am UTC](https://discuss.elastic.co/t/compress-elk-data-node/60230/3 "2016-09-11T07:14:39Z")

</div>

> [@dadoonet](#):
>
> index.codec

so as i undrostood i've just need to add index.codec: best\_compression to elasticsearch.yml file

---

<div class="post-metadata">

**Author:** ![warkolm](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/warkolm/32/39224_2.png) [@warkolm](https://discuss.elastic.co/u/warkolm)\
**Post date:** [September 11, 2016, 8:00am UTC](https://discuss.elastic.co/t/compress-elk-data-node/60230/4 "2016-09-11T08:00:32Z")

</div>

You can apply that to the index dynamically.

---

<div class="post-metadata">

**Author:** ![shaharmor](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@shaharmor](https://discuss.elastic.co/u/shaharmor)\
**Post date:** [October 10, 2016, 8:10am UTC](https://discuss.elastic.co/t/compress-elk-data-node/60230/5 "2016-10-10T08:10:15Z")

</div>

Can this be done in 2.4? Its listed under static settings in the docs and I'm getting this error when trying:  
`Can't update non dynamic settings[[index.codec]] for open indices`

---

<div class="post-metadata">

**Author:** ![warkolm](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/warkolm/32/39224_2.png) [@warkolm](https://discuss.elastic.co/u/warkolm)\
**Post date:** [October 10, 2016, 8:10am UTC](https://discuss.elastic.co/t/compress-elk-data-node/60230/6 "2016-10-10T08:10:35Z")

</div>

You do need to close the index, apply, then reopen it.

---

<div class="post-metadata">

**Author:** ![shaharmor](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@shaharmor](https://discuss.elastic.co/u/shaharmor)\
**Post date:** [October 10, 2016, 8:19am UTC](https://discuss.elastic.co/t/compress-elk-data-node/60230/7 "2016-10-10T08:19:52Z")

</div>

Got it.  
If i want to both force merge & change the codec, should i first change the codec and then merge, or first merge and then change the codec?

---

<div class="post-metadata">

**Author:** ![warkolm](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/warkolm/32/39224_2.png) [@warkolm](https://discuss.elastic.co/u/warkolm)\
**Post date:** [October 10, 2016, 8:50am UTC](https://discuss.elastic.co/t/compress-elk-data-node/60230/8 "2016-10-10T08:50:28Z")

</div>

EDIT - actually I was wrong. You need to change the codec first because the merge is what applies it.

---

<div class="post-metadata">

**Author:** ![shaharmor](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@shaharmor](https://discuss.elastic.co/u/shaharmor)\
**Post date:** [October 10, 2016, 9:43am UTC](https://discuss.elastic.co/t/compress-elk-data-node/60230/9 "2016-10-10T09:43:45Z")

</div>

And if i already merged to 1 segment, will running the merge again do something? Because when I'm running it now, it finishes immediately. So how can i change the codec now?

---

<div class="post-metadata">

**Author:** ![warkolm](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/warkolm/32/39224_2.png) [@warkolm](https://discuss.elastic.co/u/warkolm)\
**Post date:** [October 10, 2016, 10:10pm UTC](https://discuss.elastic.co/t/compress-elk-data-node/60230/10 "2016-10-10T22:10:58Z")

</div>

You can change it, just run a force merge again.

---

<div class="post-metadata">

**Author:** ![shaharmor](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@shaharmor](https://discuss.elastic.co/u/shaharmor)\
**Post date:** [October 11, 2016, 6:08am UTC](https://discuss.elastic.co/t/compress-elk-data-node/60230/11 "2016-10-11T06:08:46Z")

</div>

It does not re-run the merge once its fully merged to 1 segment per shard.

---

<div class="post-metadata">

**Author:** ![Lumaraf](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/lumaraf/32/50639_2.png) [@Lumaraf](https://discuss.elastic.co/u/Lumaraf)\
**Post date:** [October 11, 2016, 8:03am UTC](https://discuss.elastic.co/t/compress-elk-data-node/60230/12 "2016-10-11T08:03:37Z")

</div>

Don't expect huge savings from doing this. The index should already be compressed. You are just setting a higher compression level.

---

<div class="post-metadata">

**Author:** ![shaharmor](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@shaharmor](https://discuss.elastic.co/u/shaharmor)\
**Post date:** [October 13, 2016, 7:22am UTC](https://discuss.elastic.co/t/compress-elk-data-node/60230/13 "2016-10-13T07:22:18Z")

</div>

I reached 50% savings, thats very huge for me 🙂

---

<div class="post-metadata">

**Author:** ![shaharmor](https://avatars.discourse-cdn.com/v4/letter/s/58f4c7/32.png) [@shaharmor](https://discuss.elastic.co/u/shaharmor)\
**Post date:** [October 16, 2016, 6:52am UTC](https://discuss.elastic.co/t/compress-elk-data-node/60230/14 "2016-10-16T06:52:16Z")

</div>

For tracking purposes: [https://github.com/elastic/elasticsearch/issues/20936](https://github.com/elastic/elasticsearch/issues/20936)

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 5, 2017, 10:11pm UTC](https://discuss.elastic.co/t/compress-elk-data-node/60230/15 "2017-07-05T22:11:57Z")

</div>


