Databricks MigrationRoomClickHouse Workshops

05 Query multiple catalogs

Use MigrationRoom chat to query Unity, another REST catalog, and native ClickHouse together.

Outcome

One ClickHouse query has joined native migration_demo.orders, Unity Catalog customer, and a second REST-catalog nation table. This demonstrates the DataLakeCatalog engine querying Unity and other catalogs alongside native tables without first copying all of their data.

What the instructor prepared

The instructor has attached two read-only DataLakeCatalog databases to your ClickHouse service using workshop-scoped credentials:

  • unity_tpch, backed by the Databricks Unity Catalog; and
  • rest_catalog_tpch, backed by a separate Iceberg REST catalog.

The attachment is infrastructure preparation, not one of MigrationRoom's six migration buttons. Credentials remain outside chat. You will use the MigrationRoom agent and its ClickHouse tools to prove metadata access, object reads, and cross-catalog composition.

Run the catalog proof through chat

Paste this request into the Databricks → ClickHouse Cloud chat pane:

Use clickhousectl only—no Python—and do not display credentials or CREATE DATABASE DDL.

1. SHOW TABLES from unity_tpch and rest_catalog_tpch.
2. Read actual data with count() from unity_tpch.`tpch.customer` and
   rest_catalog_tpch.`tpch.nation`.
3. Run one query that joins native migration_demo.orders to Unity customer and the REST
   nation table for orders from 1995, grouped by nation with order count and revenue.
   Return at most 100 rows.
4. For data queries, set max_execution_time=30 and max_rows_to_read=100000000.
5. Show the result and explain which catalog or RBAC boundary governs each input.

Expand the clickhousectl tool calls and confirm the agent performed table reads—not just metadata listing. A successful hybrid result demonstrates three execution paths in one ClickHouse query:

InputStorage pathControl boundary
migration_demo.ordersNative MergeTree data copied by MigrationRoomClickHouse RBAC and lifecycle
Unity customerZero-copy catalog/object readUnity metadata plus catalog/storage authorization
REST nationZero-copy catalog/object readREST catalog plus its object-store authorization

What is difficult in a Databricks-only design

The notable capability is not merely reading Unity data. It is composing a native ClickHouse serving table, Unity-managed lake data, and a separate REST catalog in one ClickHouse query while each source retains its own authorization and freshness path. Reproducing that placement in one Databricks query commonly requires additional federation, ingestion, or catalog-integration work.

Keep the conversation link and a screenshot containing the two counts and hybrid result. Do not capture connection strings, catalog credentials, or generated DDL.

  • Unity and REST metadata were listed through the chat UI.
  • Both external tables returned real row counts.
  • The native/Unity/REST join returned a result without an adapter table.
  • The three governance and freshness boundaries were stated separately.
  • The UI checkpoint contains no credential.

Continue to 06 Build the native hot path.

ในหน้านี้

Track your progress?

Optional. We email a link to confirm your address; progress records once you open it.

Please use your work email address, not a personal one.

Progress tracking also requires accepting the current Terms of Service in Privacy settings.

TH