Search code examples
databasebpmncamunda

How many table are stored data in camunda database when creating new BPMN proc


I have to create a BPMN process based on the Camunda BPM platform. But when the process is created successfully, I don't know how many tables stored data of top of the BPMN process. Could you show me the tables which are containing data of my BPMN process?

References: Camunda Database Schema


Solution

  • According to a Camunda forum discussion, the

    process engine stores the XML in the database

    Digging further leads to another discussion entry which indicates that the XML is probably stored as one piece in the database:

    ACT_GE_BYTEARRAY is correct. For correctly interpreting the BYTES_ field, your report script must be able to detect the encoding from the XML declaration or assume one (should be UTF-8)

    Part of Camunda DB diagram

    This assumption is confirmed by yet another forum entry which says

    Usually files are getting stored as Blob in ACT_GE_BYTEARRAY (And as you have already mentioned, camunda saves the reference in ACT_RU_VARIABLE.BYTEARRAY_ID_)

    There is also documentation how to extract the information from the blobs.

    Last but not least, according to Camunda Userguide 7.5, the process is also stored as machine readable format:

    The ACT_RE_PROCDEF table contains all deployed process definitions. It includes information like the version details, the resource name or the suspension state.