0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Lakehouse Federation

Posted at

Lakehouse Federation は、Databricks が提供する 外部データソースの統合アクセス機能 で、
Databricks の SQL や Delta Lake のテーブルと同じ感覚で 外部データベースやクラウドストレージのデータをクエリできる仕組みです。


1. 目的

  • データを コピーせず に Databricks から直接利用する
  • 複数のデータソースを統合 して分析・可視化
  • データレイク・データウェアハウス・オペレーショナルDBなどを単一のクエリで横断

2. 仕組み

Lakehouse Federation では、Databricks 内に「外部ソースへの接続設定(External Connection)」を作成し、
外部テーブルを Databricks の Unity Catalog にマッピング します。

イメージ図:

+------------------+       +------------------+
| Databricks SQL   | --->  | External Source  |
| Notebook / BI    |       | (MySQL, Snowflake|
| Dashboard        |       |  Postgres, etc.) |
+------------------+       +------------------+

3. 対応する外部ソース(一例)

  • RDBMS: PostgreSQL, MySQL, SQL Server, Oracle
  • クラウドDWH: Snowflake, Amazon Redshift, Google BigQuery
  • その他: Azure Data Explorer, SAP, など(ODBC/JDBC経由)

4. 基本操作例

外部接続の作成

CREATE CONNECTION my_pg_connection
USING postgresql
OPTIONS (
  host 'mydb.example.com',
  port '5432',
  user 'db_user',
  password '****',
  database 'sales'
);

外部スキーマの作成

CREATE EXTERNAL SCHEMA pg_sales
FROM CONNECTION my_pg_connection
WITH DATABASE 'sales';

外部テーブルのクエリ

SELECT customer_id, total_amount
FROM pg_sales.orders
WHERE order_date >= '2024-01-01';

💡 この時点で、外部テーブルはあたかも Databricks のテーブルのように扱えます。


5. メリット

  • ETL不要:データを移動せずにそのまま分析
  • 統合クエリ:外部データとDeltaテーブルをJOIN可能
  • セキュリティ:Unity Catalog の権限管理を外部データにも適用
  • リアルタイム性:最新データを即時参照

6. 制限と注意点

  • ネットワーク接続要件(VPCピアリングやPrivate Link設定)が必要な場合あり
  • 外部DBのパフォーマンスがクエリ全体のボトルネックになり得る
  • 外部ソースの更新はサポート対象外(基本は読み取り専用)

実務的には、Lakehouse Federation は「一時的なデータ連携」や「参照だけしたいデータの分析」に強いですが、
ETLや本格的な機械学習用データは Delta Lake に取り込む方が高速で安定します。


0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?