Database

The IBM Process Mining applications requires the database, MongoDB 3.6 or later.

MongoDB instance options

You can use any one of the following methods to install a MongoDB instance:

  • Install the Community Edition on the same server as an application or a separated DB server.

  • Install the Enterprise Edition on the same server as an application or a separated DB Server.

  • Subscribe to the MongoDB Atlas service on AWS Cloud. Ensure that you choose the same region as that of the application.


Important:

Before you configure MongoDB, you must assign the following three MongoDB roles to the user:

  • dbAdmin
  • readWrite
  • read



Advanced DB configuration (for clustering)

You must use a custom connection string when using a cluster. The following code sample in the <PM_HOME>/etc/processmining.conf file describes a custom connection string:

	persistence: {
  	mongodb: {
	database: "<database name>",
	password: "<database password>",

    	connectionString: “mongodb://username:<PASSWORD>@clusterdev0-shard-00-00-0mh5i.mongodb.net:27017,clusterdev0-shard-00-01-0mh5i.mongodb.net:27017,clusterdev0-shard-00-02-0mh5i.mongodb.net:27017/test?ssl=true&replicaSet=ClusterDev0-shard-0&authSource=admin&retryWrites=true&w=majority”

 		}
	}

Important: The application replaces the <PASSWORD> placeholder with the actual password after the decryption process.


Setting up MongoDB for process app using URI

To set up a process app using URI, do the following:

  • Delete the following attributes in the <PM_HOME>/etc/accelerator-core.properties:

    # mongo configuration please update as per your mongo db detail
    spring.data.mongodb.authentication-database=<authentication database name>
    spring.data.mongodb.database=<database name>
    spring.data.mongodb.port=27017
    spring.data.mongodb.host=<database host>
    spring.data.mongodb.password=<database unencrypted-password>
    spring.data.mongodb.username=<database user>
    spring.data.mongodb.uuid-representation=standard
    
  • Add the following attribute in the <PM_HOME>/etc/accelerator-core.properties file.

spring.data.mongodb.uri: mongodb://username:<unencrypted-password>@clusterdev0-shard-00-00-0mh5i.mongodb.net:27017,clusterdev0-shard-00-01-0mh5i.mongodb.net:27017,clusterdev0-shard-00-02-0mh5i.mongodb.net:27017/test?ssl=true&replicaSet=ClusterDev0-shard-0&authSource=admin&retryWrites=true&w=majority&uuidRepresentation=standard

Important:

  • For Process App, replace the <unencrypted-password> with the actual MongoDB password.
  • Alternatively, you can manually set up MongoDB for Process App. For more information about configuring MongoDB for Process App using manual steps, see the MongoDB configuration for process app.