Additional database-related settings
All the settings below can be added at the schema level. For example, the statistics database can become very large over time, so you may want to use a separate server for the statistics database.
Connection and pool parameters can be added to the configuration file. In such a case, all other schemas would use the default connection pool.
com.unblu.storage.database.platform=Auto
com.unblu.storage.database.driver=org.h2.Driver
com.unblu.storage.database.url=jdbc\:h2\:mem\:unblu
com.unblu.storage.database.jdbcProperties=
com.unblu.storage.database.user=unblu
com.unblu.storage.database.password=secret
com.unblu.storage.database.schema=unblu
com.unblu.storage.database.liquibaseSchema=
com.unblu.storage.database.adminJdbcProperties=
com.unblu.storage.database.adminUser=
com.unblu.storage.database.adminPassword=
com.unblu.storage.database.poolMax=50
com.unblu.storage.database.poolMinIdle=
com.unblu.storage.database.adminUser=
com.unblu.storage.database.adminPassword=
Connection pool
The default JDBC connection pool is HikariCP. It provides improvements in both speed and stability compared to the deprecated EclipseLink connection pool:
-
Connections are closed when not used for a longer period.
-
Connections are validated before using
java.sql.Connection.isValid(int)
provided by the JDBC Driver. For more information refer to the Java documentation. -
New connections are opened proactively, not just on demand.
A Grafana dashboard called "Database (HikariCP)" visualizing all HikariCP metrics is automatically deployed with every Unblu cluster installation.
# Database connection pool
com.unblu.storage.database.datasourceFactory=HIKARI
com.unblu.storage.database.poolMax=20 (1)
com.unblu.storage.database.poolMinIdle=20 (2)
1 | Maximum number of connections in the pool. |
2 | Minimum number of connections that should be idle, new connections are added to the pools when connections are busy up to the configured maximum number of connections. |
The configuration above reflects the default settings. Only add a connection pool configuration if you want to deviate from this default. For production setups, the following values may be more appropriate:
com.unblu.storage.database.poolMax=60
com.unblu.storage.database.poolMinIdle=60