Supported target database configuration
In order to create an environment in beVault, and therefore a database to store your data vault, you will need to configure at least one server. You can add as many servers you need. This can be useful to have your testing environment on another server than your production one.
We recommend having all your environments on the same type of database to avoid issues with your custom SQL code (information mart, hard rules and data quality controls)
Supported target databases
Here are the currently supported databases where you can deploy your Data Vault.

PostgreSQL

Snowflake
SQL Server
IBM Db2
Configuration
The configuration may differ a little depending on the type of database you target.
Name: the host where the DBMS resides, for example localhost
allowCustomEnvironmentDatabaseName : If the users have the right to choose a database name when creating an environment. If set to false, the database name will have the following format: project_environment. For database systems where database creation is not supported this is highly recommended, because databases have to be created beforehand. (IBM Db2 for example).
DatabaseType : The type of Database. Expected values :
PostgreSQL
for versions 12 → 14
PostgreSQL15
for versions 15 → …
SQLServer
Snowflake
IbmDb2
Username : the name of the database user. This user will need to have the read and write access to the database, the right to create tables, schema, and databases (if the user has no right to create database you will have to create them manually).
Password : the password of the database user
ReadOnlyUsername : Name of a user that has read access by default on everything the write user creates.
ReadOnlyPassword : password of the read-only user
ConnectionStringSuffix : (1.6.8+) Additional parameters that will be appended to the connection string
EngineParameters: A list of parameters to pass to the Datavault Engine. This is specific to the database flavor. See below for details per db
Engine parameters
Postgresql
Parameter name | Expected value | Effect |
---|---|---|
FORCE_LOWERCASE | True/False | All identifiers to be generated and used for the database are changed to lowercase. This option is used to mimic the behavior of previous versions of beVault. Note: If you migrate a beVault from version 2.X to version 3.0.0, you need to activate this option. |
Snowflake
Parameter name | Expected value | Effect |
---|---|---|
DATAWAREHOUSE | Snowflake cloud database has the concept of “Warehouse” which is the entity doing the work when querying the database. This parameter specifies the warehouse to use. If not set, Snowflake selects the role’s default warehouse. | |
OAUTHTOKENFILEPATH | <file path> | If set, for all connections, Snowflake will use the token found in the specified file to authenticate. Used for Snowflake’s app store environment where a token is mounted at a specific location for the service’s database connection. |
USEENVIRONMENTCONFIG | true/false | If true, force the Host/Account to the values found in the following system environment variables:
This is specific to the Snowflake’s app store environment. It might or might not be useful, depending on how the docker image is deployed. |
IBM Db2
Parameter name | Expected value | Effect |
---|---|---|
ORGANIZEBY | Row/Column | Defaults to Row. In the IBM DB2 datavault engine driver, starting with the 3.6.0, tables are created with an explicit data organization (ORGANIZE BY). |
COMPRESS | No/YesAdaptive/YesStatic | Defaults to YesAdaptive. When table organization is set to be organized by row, sets IBMdb2 compression mode. |
TABLESPACE | <tablespacename> | If set, produce IN <tablespacename> statements for all table creations. Sets the target tablespace for all tables generated by the metavault. |
TABLESPACEINDEXES | <tablespacename> | If set, produce INDEX IN <tablespacename> statements for all table creations. Sets the target tablespace for all table indexes generated by the metavault. |