Catalog management properties#
The following properties are used to configure catalog management with further controls for dynamic catalog management.
Note
Dynamic catalog management is available as a public preview in Starburst Enterprise. Contact Starburst Support with questions or feedback.
All properties described in this page are defined as follows, depending on the deployment type:
Kubernetes: In the
additionalProperties
section of the the top-levelcoordinator
andworker
nodes in thevalues.yaml
file.Starburst Admin In the
files/coordinator/config.properties.j2
andfiles/worker/config.properties.j2
files.
catalog.management
#
Type: string
Allowed values:
static
,dynamic
Default value:
static
When set to static
, Trino reads catalog property files and configures
available catalogs only on server startup. When set to dynamic
, catalog
configuration can also be managed using CREATE CATALOG and
DROP CATALOG. New worker nodes joining the cluster receive the current
catalog configuration from the coordinator node.
Warning
Some connectors do not support dynamic catalog management, including
warp-speed
.
Some connectors are known not to release all resources when dropping a catalog that uses such connector. This includes all connectors that can read data from HDFS, S3, GCS, or Azure, which are Hive connector, Iceberg connector, Delta Lake connector, and Hudi connector.
The complete CREATE CATALOG
query is logged and visible in the
Starburst Enterprise web UI, but security-sensitive configuration properties are masked. It is
still strongly recommended to use a secrets manager rather
than store any credentials in plain text.
catalog.prune.update-interval
#
Type: duration
Default value:
5s
Minimum value:
1s
Requires catalog.management to be set to dynamic
. Interval for
pruning dropped catalogs. Dropping a catalog does not interrupt any running
queries that use it, but makes it unavailable to any new queries.
catalog.store
#
Type: string
Allowed values:
file
,memory
,starburst
Default value:
file
Requires catalog.management to be set to dynamic
. When set to file
,
creating and dropping catalogs using the SQL commands adds and removes catalog
property files on the coordinator node. Trino server process requires write
access in the catalog configuration directory. Existing catalog files are also
read on the coordinator startup. When set to memory
, catalog configuration is
only managed in memory, and any existing files are ignored on startup. When set
to starburst
, catalog configurations are stored in the
Backend service database.
When using the starburst
value, secrets cannot be stored in plaintext.
CREATE CATALOG and ALTER CATALOG fail when trying to set
security-sensitive properties without using a secrets
manager. Any security-sensitive properties must have their
entire value set to reference a secret manager, so a configuration like
mongo.connection-url=mongodb://${vault:user}:${vault:password}@example.host:27017/
is invalid. The whole URL would instead need to be stored and specified as
mongo.connection-url=${vault:connection-url}
.
catalog.config-dir
#
Type: string
Default value:
etc/catalog/
Requires catalog.management to be set to static
or
catalog.store to be set to file
. The directory with catalog property
files.
catalog.disabled-catalogs
#
Type: string
Requires catalog.management to be set to static
or
catalog.store to be set to file
. Comma-separated list of catalogs to
ignore on startup.
catalog.read-only
#
Type: string
Default value:
false
Requires catalog.store to be set to file
. If true, existing catalog
property files cannot be removed with DROP CATALOG
, and no new catalog files
can be written with identical names with CREATE CATALOG
. As a result, a
coordinator restart resets the known catalogs to the existing files only.