Infrastructure & Servers

July 23, 2026 ยท View on GitHub

The servers element describes where the data protected by this data contract is physically located. That metadata helps to know where the data is so that a data consumer can discover the data and a platform engineer can automate access.

An entry in servers describes a single dataset on a specific environment and a specific technology. The servers element can contain multiple servers, each with its own configuration.

The typical ways of using the top level servers element are as follows:

  • Single Server: The data contract protects a specific dataset at a specific location. Example: a CSV file on an SFTP server.
  • Multiple Environments: The data contract makes sure that the data is protected in all environments. Example: a data product with data in a dev(elopment), UAT, and prod(uction) environment on Databricks.

Back to TOC

General Server Structure

Each server in the schema has the following structure:

servers:
  - id: my_awesome_server
    server: my-server-name
    type: <server-type>
    description: <server-description>
    environment: <server-environment>
    <server-type-specific-fields> # according to the server type, see below
    roles:
      - <role-details>
    customProperties:
      - <custom-properties>

Common Server Properties

KeyTypeUX labelRequiredDescription
serverstringServerYesIdentifier of the server.
idstringIDNoA unique identifier used to reduce the risk of collisions, such as a UUID.
typestringTypeYesType of the server. Can be one of: api, athena, azure, bigquery, clickhouse, cloudsql, custom, databricks, db2, denodo, dremio, duckdb, glue, hive, impala, informix, kafka, kinesis, local, mysql, oracle, postgres, postgresql, presto, pubsub, redshift, s3, sftp, snowflake, sqlserver, synapse, trino, vertica, zen.
descriptionstringDescriptionNoDescription of the server.
environmentstringEnvironmentNoEnvironment of the server. Examples includes: prod, preprod, dev, uat.
rolesarrayRolesNoList of roles that have access to the server. Check roles section for more details.
customPropertiesarrayCustom PropertiesNoCustom properties that are not part of the standard.

Specific Server Properties

Each server type can be customized with different properties such as host, port, database, and schema, depending on the server technology in use. Refer to the specific documentation for each server type for additional configurations.

Specific Server Properties

If your server is not in the list, please use custom and suggest it as an improvement. Possible values for type are:

API Server

KeyTypeUX LabelRequiredDescription
locationstringLocationYesURL to the API

Amazon Athena Server

Amazon Athena is an interactive query service that makes it easy to analyze data directly in Amazon Simple Storage Service (Amazon S3) using standard SQL. With a few actions in the AWS Management Console, you can point Athena at your data stored in Amazon S3 and begin using standard SQL to run ad-hoc queries and get results in seconds.

KeyTypeUX LabelRequiredDescription
schemastringSchemaYesIdentify the schema in the data source in which your tables exist.
stagingDirstringStaging DirectoryNoAmazon Athena automatically stores query results and metadata information for each query that runs in a query result location that you can specify in Amazon S3.
catalogstringCatalogNoIdentify the name of the Data Source, also referred to as a Catalog.
regionNamestringRegion NameNoThe region your AWS account uses.

Azure Server

KeyTypeUX LabelRequiredDescription
locationstringLocationYesFully qualified path to Azure Blob Storage or Azure Data Lake Storage (ADLS), supports globs.
formatstringFormatYesFile format.
delimiterstringDelimiterNoOnly for format = json. How multiple json documents are delimited within one file

Google BigQuery

BigQuery is a fully managed, AI-ready data analytics platform that helps you maximize value from your data and is designed to be multi-engine, multi-format, and multi-cloud.

KeyTypeUX LabelRequiredDescription
projectstringProjectYesThe Google Cloud Platform (GCP) project name.
datasetstringDatasetYesThe GCP dataset name.

ClickHouse Server

ClickHouse is an open-source column-oriented database management system that allows generating analytical data reports in real-time.

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe host of the ClickHouse server.
portintegerPortYesThe port to the ClickHouse server.
databasestringDatabaseYesThe name of the database.

Google Cloud SQL

Google Cloud SQL is a fully managed, cost-effective relational database service for PostgreSQL, MySQL, and SQL Server.

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe host of the Google Cloud SQL server.
portintegerPortYesThe port of the Google Cloud SQL server.
databasestringDatabaseYesThe name of the database.
schemastringSchemaYesThe name of the schema.

Databricks Server

KeyTypeUX LabelRequiredDescription
catalogstringCatalogYesThe name of the Hive or Unity catalog
schemastringSchemaYesThe schema name in the catalog
hoststringHostNoThe Databricks host

IBM Db2 Server

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe host of the IBM DB2 server.
portintegerPortYesThe port of the IBM DB2 server.
databasestringDatabaseYesThe name of the database.
schemastringSchemaNoThe name of the schema.

Denodo Server

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe host of the Denodo server.
portintegerPortYesThe port of the Denodo server.
databasestringDatabaseNoThe name of the database.

Dremio Server

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe host of the Dremio server.
portintegerPortYesThe port of the Dremio server.
schemastringSchemaNoThe name of the schema.

DuckDB Server

DuckDB supports a feature-rich SQL dialect complemented with deep integrations into client APIs.

KeyTypeUX LabelRequiredDescription
databasestringDatabaseYesPath to duckdb database file.
schemastringSchemaNoThe name of the schema.

Amazon Glue

KeyTypeUX LabelRequiredDescription
accountstringAccountYesThe AWS Glue account
databasestringDatabaseYesThe AWS Glue database name
locationstringLocationNoThe AWS S3 path. Must be in the form of a URL.
formatstringFormatNoThe format of the files

Hive

Apache Hive is a distributed, fault-tolerant data warehouse system that enables analytics at massive scale. Built on top of Apache Hadoop, Hive allows users to read, write, and manage petabytes of data using SQL-like queries through HiveQL, with native support for cloud storage systems and enterprise-grade security features.

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe host to the Hive server.
portintegerPortNoThe port to the Hive server. Defaults to 10000.
databasestringDatabaseYesThe name of the Hive database.

Apache Impala

Apache Impala is a massively parallel processing (MPP) SQL query engine for data stored in Apache Hadoop clusters. Impala provides high-performance, low-latency SQL queries on data stored in HDFS and Apache HBase, enabling interactive exploration and analytics without data movement or transformation.

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe host to the Impala server.
portintegerPortNoThe port to the Impala server. Defaults to 21050.
databasestringDatabaseYesThe name of the Impala database.

IBM Informix and HCL Informix

IBM Informix is a high performance, always-on, highly scalable and easily embeddable enterprise-class database optimized for the most demanding transactional and analytics workloads. As an object-relational engine, IBM Informix seamlessly integrates the best of relational and object-oriented capabilities enabling the flexible modeling of complex data structures and relationships.

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe host to the Informix server.
portintegerPortNoThe port to the Informix server. Defaults to 9088.
databasestringDatabaseYesThe name of the database.

Kafka Server

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe bootstrap server of the kafka cluster.
formatstringFormatNoThe format of the messages.

Amazon Kinesis

KeyTypeUX LabelRequiredDescription
streamstringStreamYesThe name of the Kinesis data stream.
regionstringRegionNoAWS region.
formatstringFormatNoThe format of the record

Local Files

KeyTypeUX LabelRequiredDescription
pathstringPathYesThe relative or absolute path to the data file(s).
formatstringFormatYesThe format of the file(s)

MySQL Server

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe host of the MySql server.
portintegerPortNoThe port of the MySql server. Defaults to 3306.
databasestringDatabaseYesThe name of the database.

Oracle

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe host to the Oracle server
portintegerPortYesThe port to the Oracle server.
serviceNamestringService NameYesThe name of the service.

PostgreSQL

PostgreSQL is a powerful, open source object-relational database system with over 35 years of active development that has earned it a strong reputation for reliability, feature robustness, and performance.

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe host to the PostgreSQL server
portintegerPortNoThe port to the PostgreSQL server. Defaults to 5432.
databasestringDatabaseYesThe name of the database.
schemastringSchemaNoThe name of the schema in the database.

Presto Server

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe host to the Presto server
catalogstringCatalogNoThe name of the catalog.
schemastringSchemaNoThe name of the schema.

Google Pub/Sub

Google Cloud service to Ingest events for streaming into BigQuery, data lakes or operational databases.

KeyTypeUX LabelRequiredDescription
projectstringProjectYesThe GCP project name.

Amazon Redshift Server

Amazon Redshift is a power data driven decisions with the best price-performance cloud data warehouse.

KeyTypeUX LabelRequiredDescription
databasestringDatabaseYesThe name of the database.
schemastringSchemaYesThe name of the schema.
hoststringHostNoAn optional string describing the server.
regionstringRegionNoAWS region of Redshift server.
accountstringAccountNoThe account used by the server.

Amazon S3 Server and Compatible Servers

Amazon Simple Storage Service (Amazon S3) is an object storage service offering industry-leading scalability, data availability, security, and performance. Millions of customers of all sizes and industries store, manage, analyze, and protect any amount of data for virtually any use case, such as data lakes, cloud-native applications, and mobile apps. Other vendors have implemented a compatible implementation of S3.

KeyTypeUX LabelRequiredDescription
locationstringLocationYesS3 URL, starting with s3://
endpointUrlstringEndpoint URLNoThe server endpoint for S3-compatible servers.
formatstringFormatNoFile format.
delimiterstringDelimiterNoOnly for format = json. How multiple json documents are delimited within one file

SFTP Server

Secure File Transfer Protocol (SFTP) is a network protocol that enables secure and encrypted file transfers between a client and a server.

KeyTypeUX LabelRequiredDescription
locationstringLocationYesSFTP URL, starting with sftp://. The URL should include the port number.
formatstringFormatNoFile format.
delimiterstringDelimiterNoOnly for format = json. How multiple json documents are delimited within one file

Snowflake

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe host to the Snowflake server
portintegerPortYesThe port to the Snowflake server.
accountstringAccountYesThe Snowflake account used by the server.
databasestringDatabaseYesThe name of the database.
warehousestringWarehouseYesThe name of the cluster of resources that is a Snowflake virtual warehouse.
schemastringSchemaYesThe name of the schema.

Microsoft SQL Server

Microsoft SQL Server is a proprietary relational database management system developed by Microsoft.

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe host to the database server
portintegerPortNoThe port to the database server. Defaults to 1433.
databasestringDatabaseYesThe name of the database.
schemastringSchemaYesThe name of the schema in the database.

Synapse Server

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe host of the Synapse server.
portintegerPortYesThe port of the Synapse server.
databasestringDatabaseYesThe name of the database.

Trino Server

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe Trino host URL.
portintegerPortYesThe Trino port.
catalogstringCatalogYesThe name of the catalog.
schemastringSchemaYesThe name of the schema in the database.

Vertica Server

KeyTypeUX LabelRequiredDescription
hoststringHostYesThe host of the Vertica server.
portintegerPortYesThe port of the Vertica server.
databasestringDatabaseYesThe name of the database.
schemastringSchemaYesThe name of the schema.

Actian Zen Server

Actian Zen (formerly Btrieve, later named Pervasive PSQL until version 13) is an ACID-compliant, zero-DBA, embedded, nano-footprint, multi-model, Multi-Platform database management system (DBMS).

KeyTypeUX LabelRequiredDescription
hoststringHostYesHostname or IP address of the Zen server.
portintegerPortNoZen server SQL connections port. Defaults to 1583.
databasestringDatabaseYesDatabase name to connect to on the Zen server.

Custom Server

KeyTypeUX LabelRequiredDescription
accountstringAccountNoAccount used by the server.
catalogstringCatalogNoName of the catalog.
databasestringDatabaseNoName of the database.
datasetstringDatasetNoName of the dataset.
delimiterstringDelimiterNoDelimiter.
endpointUrlstringEndpoint URLNoServer endpoint.
formatstringFormatNoFile format.
hoststringHostNoHost name or IP address.
locationstringLocationNoA URL to a location.
pathstringPathNoRelative or absolute path to the data file(s).
portintegerPortNoPort to the server. No default value is assumed for custom servers.
projectstringProjectNoProject name.
regionstringRegionNoCloud region.
regionNamestringRegion NameNoRegion name.
schemastringSchemaNoName of the schema.
serviceNamestringService NameNoName of the service.
stagingDirstringStaging DirectoryNoStaging directory.
streamstringStreamNoName of the data stream.
warehousestringWarehouseNoName of the cluster or warehouse.

If you need another property, use custom properties.

Back to TOC