Migrate Process Engine Database to ElasticSearch exporter DB


I currently have a Spring Boot application that uses Camunda 7 and stores its data (history, processes, task lists, etc.) in the Process engine database (ACT_GE_XX, ACT_HI_XX, ACT_RE_XX, ACT_RU_XX). If I wanted to migrate to Camunda 8, which requires using Camunda SaaS, would it be possible to export the data history from the Process engine database to ElasticSearch Exporter? Or would the migration result in data loss ?


Hi @Z4N3TTI and welcome to the forum,

There are multiple parts to your questions, let me address them one by one.

Migrating to Camunda 8 does not require you to use Camunda SaaS. You can also host Camunda 8 yourself. However, SaaS is the right option to get started quickly.

By default, Camunda 8 includes an Elasticsearch exporter, which creates and fills indices with run-time and historic data. This data is used by the web applications Operate, Tasklist, and Optimize. If you use Camunda 8 SaaS it’s not possible to access these indices directly. Exporting data to another Elasticsearch requires retrieving the data via Camunda’s APIs.

There are different strategies, such as Cronjobs, dedicated workers for archiving, or updating records whenever a worker is triggered.

In the self-managed setup of Camunda 8, you can access Elasticsearch directly. If this is not enough, you could also write a custom exporter that writes the data you are interested in to your Elasticsearch instance.

Camunda is currently evaluating ways to enable Exporters for SaaS — but they do not exist yet.

You can read more about Camunda 8’s architecture:

And review the API’s:

I hope this information helps.

Hello @StephanHaarmann,
Thank you for your valuable insights you provided regarding the migration process.
I have another question: If I decide to host Camunda 8 without using SaaS, will I still have the same database (process engine db) as mentioned in the migration process you explained earlier?
Your assistance is greatly appreciated :pray:

Hi @Z4N3TTI,

Yes, the setup is very similar. You have Zeebe, Zeebe exports to Elasticsearch, the web applications will get their data from elasticsearch. And you can write custom exporters.