# ES 5.6 - Delete by query

**URL:** https://discuss.elastic.co/t/es-5-6-delete-by-query/240745
**Category:** Elasticsearch
**Created:** [July 10, 2020, 6:46pm UTC](https://discuss.elastic.co/t/es-5-6-delete-by-query/240745 "2020-07-10T18:46:43Z")
**Posts on this page:** 9
**Page:** 1

<div class="post-metadata">

### Author: ![natasha\_adewar](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/natasha_adewar/32/71964_2.png) [@natasha\_adewar](https://discuss.elastic.co/u/natasha_adewar)
#### Post date: [July 10, 2020, 6:46pm UTC](https://discuss.elastic.co/t/es-5-6-delete-by-query/240745/1 "2020-07-10T18:46:43Z")

</div>

We have an index in ES 2.4 that holds 120 million plus documents with different ttl values on each of them and we do insert upto 700k documents every day into the same index.  
We are now migrating to ES 5.6 and are planning to cron delete by query on this index may be once a day which would delete close to 500k documents in every run.  
My question is , will deleting 500k or more docs at a time by calling deletebyquery api in this cron affect ES performance, since it would run on a live index that is still indexing and running search requests. Also, any recommendations other than cron to delete the documents by calling deletebyquery api?

---

<div class="post-metadata">

### Author: ![Christian\_Dahlqvist](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/christian_dahlqvist/32/4617_2.png) [@Christian\_Dahlqvist](https://discuss.elastic.co/u/Christian_Dahlqvist)
#### Post date: [July 11, 2020, 5:38am UTC](https://discuss.elastic.co/t/es-5-6-delete-by-query/240745/2 "2020-07-11T05:38:04Z")

</div>

Are you just inserting new documents or are you also updating documents? If you are not performing any updates, you can index your documents into time-based indices based on when they expire. You can then once a day (if you have daily indices) just delete the index that have exceeded ttl, which is a lot faster and more efficient than running delete by query. That would have no measurable impact on performance while delete by query most likely will.

---

<div class="post-metadata">

### Author: ![natasha\_adewar](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/natasha_adewar/32/71964_2.png) [@natasha\_adewar](https://discuss.elastic.co/u/natasha_adewar)
#### Post date: [July 13, 2020, 10:49am UTC](https://discuss.elastic.co/t/es-5-6-delete-by-query/240745/3 "2020-07-13T10:49:38Z")

</div>

Along with insertion we also update the existing documents. Also every document have got different ttl value.

---

<div class="post-metadata">

### Author: ![Christian\_Dahlqvist](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/christian_dahlqvist/32/4617_2.png) [@Christian\_Dahlqvist](https://discuss.elastic.co/u/Christian_Dahlqvist)
#### Post date: [July 13, 2020, 10:52am UTC](https://discuss.elastic.co/t/es-5-6-delete-by-query/240745/4 "2020-07-13T10:52:38Z")

</div>

Then time based indices will not work so you will likely not be able to get away from the overhead and performance impact of delete-by-query.

---

<div class="post-metadata">

### Author: ![natasha\_adewar](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/natasha_adewar/32/71964_2.png) [@natasha\_adewar](https://discuss.elastic.co/u/natasha_adewar)
#### Post date: [July 13, 2020, 3:41pm UTC](https://discuss.elastic.co/t/es-5-6-delete-by-query/240745/5 "2020-07-13T15:41:23Z")

</div>

how would delete-by-query affect the performance as compared to ttl that we have in older ES versions?  
I believe the older version ES used to run the deletes like every minute to check the ttl and delete the docs.  
also how often should we run the delete by query cron ?

---

<div class="post-metadata">

### Author: ![Christian\_Dahlqvist](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/christian_dahlqvist/32/4617_2.png) [@Christian\_Dahlqvist](https://discuss.elastic.co/u/Christian_Dahlqvist)
#### Post date: [July 13, 2020, 3:48pm UTC](https://discuss.elastic.co/t/es-5-6-delete-by-query/240745/6 "2020-07-13T15:48:30Z")

</div>

It is indeed the same process so impact may be similar. Regarding how often to run I would recommend you to test. It may be better to delete little by little rather that a big job once a day.

---

<div class="post-metadata">

### Author: ![natasha\_adewar](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/natasha_adewar/32/71964_2.png) [@natasha\_adewar](https://discuss.elastic.co/u/natasha_adewar)
#### Post date: [July 13, 2020, 9:02pm UTC](https://discuss.elastic.co/t/es-5-6-delete-by-query/240745/7 "2020-07-13T21:02:06Z")

</div>

Thank you. Do you have any recommendations for mandatory steps/checks that should be done before and after we run the delete by query cron on the huge live Index .

---

<div class="post-metadata">

### Author: ![Christian\_Dahlqvist](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/christian_dahlqvist/32/4617_2.png) [@Christian\_Dahlqvist](https://discuss.elastic.co/u/Christian_Dahlqvist)
#### Post date: [July 14, 2020, 4:29am UTC](https://discuss.elastic.co/t/es-5-6-delete-by-query/240745/8 "2020-07-14T04:29:47Z")

</div>

No, I am not aware of any special checks required.

---

<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: [August 11, 2020, 4:34am UTC](https://discuss.elastic.co/t/es-5-6-delete-by-query/240745/9 "2020-08-11T04:34:20Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
