Federation Query

Federation Query lets you query data in external data systems (Hive, Databricks, Iceberg, Snowflake, etc.) directly using standard SQL — no data migration or copying required. By creating an EXTERNAL CATALOG, you map an external data catalog into Lakehouse for unified cross-system queries.


Supported External Data Sources

External SystemConnection MethodTypical Use Case
Apache HiveHive Metastore URIsIn-place acceleration of existing Hive warehouses, replacing Presto/Trino
Databricks Unity CatalogDatabricks APICross-platform federated analytics without moving Databricks data
Iceberg REST CatalogIceberg REST APIQuery any data lake compatible with the Iceberg REST protocol
Snowflake Open CatalogIceberg REST API + OAuthAccess Iceberg tables managed by Snowflake

Core Concepts

External Catalog is the entry point for federation queries. It maps the metadata catalog of an external data system into Lakehouse, accessed using three-level naming: catalog.schema.table.

External Schema is an alternative approach that mounts an external Hive database into the current workspace, using two-level naming schema.table. It is better suited for integrating a Hive database into an existing workspace.

Selection guide: External Catalog vs External Schema


Quick Start

External Catalog depends on a pre-created Catalog Connection (Storage Connection → Catalog Connection → External Catalog). For the complete configuration steps, see the External Object User Guide.

Once configured, use standard SQL to query:

-- 1. Create an External Catalog (requires a Catalog Connection first) CREATE EXTERNAL CATALOG hive_prod CONNECTION hive_catalog_conn; -- 2. View all Catalogs (including external ones) SHOW CATALOGS; -- category = 'EXTERNAL' indicates a federated catalog -- 3. View Schemas and tables in the external Catalog SHOW SCHEMAS IN hive_prod; SHOW TABLES IN hive_prod.default; -- 4. Query directly without migrating data SELECT * FROM hive_prod.default.orders LIMIT 100; -- 5. Cross-system JOIN SELECT o.order_id, u.name FROM hive_prod.default.orders o JOIN my_lakehouse_table u ON o.user_id = u.id;


This Section

PageDescription
External Object User GuideComplete operations for creating, querying, and managing External Catalog / Schema / Table
Query Snowflake OpenCatalog Iceberg TablesFederated queries on Snowflake-managed Iceberg data via Iceberg REST API
Databricks Cross-Platform Data FederationBest practices for cross-platform federation between Databricks Unity Catalog and Singdata Lakehouse