# Data Migration from 2.3.3 to 8..9.0

**URL:** <https://discuss.elastic.co/t/data-migration-from-2-3-3-to-8-9-0/368589>\
**Category:** Elasticsearch\
**Tags:** migration\
**Created:** [October 10, 2024, 5:56am UTC](https://discuss.elastic.co/t/data-migration-from-2-3-3-to-8-9-0/368589 "2024-10-10T05:56:48Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![utkarsh-007](https://avatars.discourse-cdn.com/v4/letter/u/b77776/32.png) [@utkarsh-007](https://discuss.elastic.co/u/utkarsh-007)\
**Post date:** [October 10, 2024, 5:56am UTC](https://discuss.elastic.co/t/data-migration-from-2-3-3-to-8-9-0/368589/1 "2024-10-10T05:56:48Z")

</div>

I have an on-premise elastic cluster running on version 2.3.3. (aka old)  
I have another on-premise elastic cluster running on version 8.9.0 (aka new)  
I want to migrate data from one index of old cluster to new index of new cluster.I would like to hear some suggestions based on your experience what is the best approach i can take.

---

<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:** [October 10, 2024, 6:21am UTC](https://discuss.elastic.co/t/data-migration-from-2-3-3-to-8-9-0/368589/2 "2024-10-10T06:21:25Z")

</div>

You need to set up index templates in the new cluster as mappings are likely to have changed significantly. Once that is done you need to perform a [reindex from remote](https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-reindex.html#reindex-from-remote) from the new cluster. That should as far as I know work even though the version difference is huge. This naturally requires source to be enabled in the old cluster.

---

<div class="post-metadata">

**Author:** ![utkarsh-007](https://avatars.discourse-cdn.com/v4/letter/u/b77776/32.png) [@utkarsh-007](https://discuss.elastic.co/u/utkarsh-007)\
**Post date:** [October 11, 2024, 6:54am UTC](https://discuss.elastic.co/t/data-migration-from-2-3-3-to-8-9-0/368589/3 "2024-10-11T06:54:34Z")

</div>

I tried out the reindex-from-remote option but my source cluster is giving{  
"type": "out\_of\_memory\_error",  
"reason": "Java heap space"  
}its running out of memory but i am not sure why. Any suggestion

---

<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:** [October 11, 2024, 7:29am UTC](https://discuss.elastic.co/t/data-migration-from-2-3-3-to-8-9-0/368589/4 "2024-10-11T07:29:08Z")

</div>

You probably need to add RAM and heap to your source cluster. What is the specification of it at the moment?

---

<div class="post-metadata">

**Author:** ![utkarsh-007](https://avatars.discourse-cdn.com/v4/letter/u/b77776/32.png) [@utkarsh-007](https://discuss.elastic.co/u/utkarsh-007)\
**Post date:** [December 10, 2024, 6:04am UTC](https://discuss.elastic.co/t/data-migration-from-2-3-3-to-8-9-0/368589/5 "2024-12-10T06:04:17Z")

</div>

I have reindex 10 years of data. the document counts are matching. The only challange i have is to check the data integrity. I can develop a custom tool which can traverse through each document on both the cluster and do the comparision. but is there any easier approach to do this?

---

<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:** [December 10, 2024, 7:02am UTC](https://discuss.elastic.co/t/data-migration-from-2-3-3-to-8-9-0/368589/6 "2024-12-10T07:02:40Z")

</div>

> [@utkarsh-007](#):
>
> I can develop a custom tool which can traverse through each document on both the cluster and do the comparision. but is there any easier approach to do this?

No, as far as I know I think a custom script is required.
