MATIH Platform is in active MVP development. Documentation reflects current implementation status.
9. Query Engine & SQL
Catalogs

Trino Catalogs

Trino catalogs define the connection to underlying data sources. Each catalog maps to a specific connector and data source configuration. The MATIH platform manages catalogs as part of the data infrastructure, with tenant-level access controls determining which catalogs are visible to each tenant.


Default Catalogs

CatalogConnectorDescription
deltaDelta LakePrimary analytical data store
icebergApache IcebergTable format for large-scale analytics
systemSystemTrino system metadata and information
memoryMemoryIn-memory tables for temporary data

Catalog Configuration

Catalogs are configured via properties files mounted into the Trino coordinator:

# delta.properties
connector.name=delta_lake
hive.metastore.uri=thrift://hive-metastore:9083
delta.metadata.cache-ttl=5m
delta.max-partitions-per-writer=100
hive.s3.path-style-access=true
hive.s3.endpoint=http://minio:9000
hive.s3.aws-access-key=${S3_ACCESS_KEY}
hive.s3.aws-secret-key=${S3_SECRET_KEY}

Tenant Catalog Access

Each tenant has a configured set of accessible catalogs. The Query Engine validates catalog access before query execution:

TierAccessible Catalogs
FREEdelta, memory
STARTERdelta, memory
PROFESSIONALdelta, iceberg, memory
ENTERPRISEAll catalogs including custom connectors

Custom Catalogs

Enterprise tenants can request custom catalog configurations for connecting to their own data sources. Custom catalogs are deployed as additional properties files in the Trino configuration.

StepDescription
1Tenant requests custom catalog through the catalog service
2Platform validates connector availability and credentials
3Catalog properties file is generated and deployed
4Trino coordinator is notified to load the new catalog

Catalog Metadata

The Query Engine exposes catalog metadata through the data catalog service, which queries Trino's information_schema for:

  • Available schemas within each catalog
  • Table listings per schema
  • Column definitions and data types
  • Table statistics for cost estimation