Configuration planning for a messaging engine to use a data store
Relational database management system (RDBMS) for the data store
We might want to choose the RDBMS that we use for other applications, particularly if we are already familiar with the tools we use for managing that RDBMS. We might also want to consider the following criteria:
- Performance
- Scalability
- Availability, especially if we are running messaging engines in a high availability environment
When a new messaging engine that uses a data store is created on a single server, it is configured to use an Apache Derby data source by default. This enables the messaging engine to run without needing any additional configuration. The default embedded Derby data source is sufficient for many purposes. Other relational database management systems offer more comprehensive tooling and improved performance, particularly scalability on larger machines with more than two processors.
WebSphere Application Server supports direct customer use of the Apache Derby database in test environments only. The product does not support direct customer use of Apache Derby database in production environments. The product supports the use of Apache Derby only by internal application server componentsf in production environments.
Database topology
We must consider several options when selecting the relative location of a data store and its messaging engine:
- Decide whether the data store will run on the same node as its messaging engine, or on a remote node. In some cases, running the data store on a remote node can improve performance. In other cases, a local database provides performance equivalent to a remote database. We might want to conduct our own performance analysis, because the performance characteristics can be very sensitive to the hardware specification.
- Decide whether the data store will have a dedicated database, or share a database with other data stores.
- Consider the implications for high availability of our choice of topology.
Automatic creation of database tables
Consider whether we want WAS to create the data store tables automatically or whether we want the database administrator to create the tables beforehand:
- WAS can create the data store tables automatically if we select the Create tables option when we configure the data store to use a data source. To choose this option, first ensure that WAS has sufficient authority to create tables and indexes by setting up the required privileges for our chosen database.
DB2 for z/OS restriction: The option for WAS to create the tables is not available with DB2 for z/OS . If we use DB2 for z/OS, the database administrator must create the data store tables manually.
- To enable the database administrator to create the tables manually, provide data definition language (DDL) statements created using the sibDDLGenerator command.
Amount of BLOB space required to hold message data
Message data is stored in a database table column of datatype BLOB. Before creating a data store, consider the size of our expected workload to ensure that the database administrator creates a sufficiently large BLOB space to hold your message data.
Related:
Data stores Data store high availability Data store topologies Configure a JDBC data source for a messaging engine Create data store tables Data store tables Database privileges