Lakebase 自動スケーリングを始める

Important

Lakebase 自動スケールは、自動スケール コンピューティング、ゼロへのスケール、分岐、インスタント リストアを備えた最新バージョンの Lakebase です。 サポートされているリージョンについては、「 リージョンの可用性」を参照してください。 Lakebase プロビジョニング済みユーザーの場合は、「 Lakebase Provisioned」を参照してください。

このガイドを終了すると、サンプル データを含む実行中の Postgres データベースが Unity カタログに接続され、Lakebase と Databricks lakehouse の間でデータが流れます。

手順: (1) プロジェクト →の作成 (2) →の接続 (3) テーブル→の作成 (4) Unity カタログへの登録 → (5) データの提供

手順 1: 最初のプロジェクトを作成する

アプリ スイッチャーから Lakebase アプリを開きます。

アプリ スイッチャー

[ 自動スケール] を選択して、Lakebase 自動スケール UI にアクセスします。

[新しいプロジェクト] をクリックします。 プロジェクトに名前を付け、Postgres のバージョンを選択します。 プロジェクトは、1 つの production ブランチ、既定の databricks_postgres データベース、およびブランチ用に構成されたコンピューティング リソースで作成されます。

[プロジェクトの作成] ダイアログ

コンピューティングがアクティブ化されるまでに少し時間がかかる場合があります。 production ブランチのコンピュートはデフォルトで常にオンになっています(スケール・トゥ・ゼロは無効になっています)が、必要に応じてこの設定を変更できます。

プロジェクトのリージョンは、ワークスペース リージョンに自動的に設定されます。

詳細情報: プロジェクトの作成 | 自動スケーリング | ゼロへのスケーリング

手順 2: データベースに接続する

プロジェクトから 運用ブランチを 選択し、[ 接続] をクリックします。 接続文字列は、任意の標準 Postgres クライアント (psql、pgAdmin、DBeaver、またはアプリケーション フレームワーク) で動作します。

[接続] ダイアログ

Databricks ID に接続するには、接続ダイアログから psql スニペットをコピーし、メッセージが表示されたら OAuth トークンを貼り付けます。

psql 'postgresql://your-email@databricks.com@ep-abc-123.databricks.com/databricks_postgres?sslmode=require'

詳細情報: 接続のクイックスタート | psql | pgAdmin | Postgres クライアント

手順 3: 最初のテーブルを作成する

Lakebase SQL エディターには、サンプル SQL が事前に読み込まれます。 プロジェクトから 運用 ブランチを選択し、SQL エディターを開き、指定されたステートメントを実行して playing_with_lakebase テーブルを作成し、サンプル データを挿入します。

プリロードされたサンプル SQL を含む SQL エディター

詳細情報: SQL エディター | テーブル エディター | Postgres クライアント

手順 4: Unity カタログに登録する

Lakebase データベースは実行されていますが、Unity カタログに登録するまで、Databricks プラットフォームの残りの部分からは見えません。 登録したら、Databricks SQL から Lakebase テーブルにクエリを実行し、運用データを Lakehouse 分析と結合し、統合ガバナンスを適用できます。

カタログ エクスプローラーで、 Lakebase 自動スケール を種類として使用して新しいカタログを作成し、プロジェクトの production ブランチと databricks_postgres データベースをポイントします。

Unity カタログに LKB データベースを登録する

SQL ウェアハウスからクエリを実行できるようになりました。

SELECT * FROM lakebase_catalog.public.playing_with_lakebase;

詳細情報: Unity カタログに登録する

手順 5: アプリで Lakehouse データを提供する

同期テーブルを 使用すると、Unity カタログから Lakebase データベースに分析データが取り込まれるため、アプリケーションは待機時間の短いトランザクション読み取りでクエリを実行できます。 サンプルの Unity カタログ テーブルを作成し、それを Lakebase と同期します。

SQL ウェアハウスまたはノートブックで、ソース テーブルを作成します。

CREATE TABLE main.default.user_segments AS
SELECT * FROM VALUES
  (1001, 'premium', 2500.00, 'high'),
  (1002, 'standard', 450.00, 'medium'),
  (1003, 'premium', 3200.00, 'high'),
  (1004, 'basic', 120.00, 'low')
AS segments(user_id, tier, lifetime_value, engagement);

次に、このテーブルを Lakebase に同期します。 カタログ エクスプローラーで、プロジェクトのuser_segments データベースをターゲットにして、スナップショット モードのdatabricks_postgresから同期テーブルを作成します。 スナップショット モードでは、データが 1 回コピーされます。 継続的更新の場合は、トリガーモードまたは連続モードを使用します。

同期が完了すると、データは default.user_segments_syncedとして Lakebase で使用できるようになります。 Lakebase SQL エディターでクエリを実行します。

SELECT * FROM "default".user_segments_synced WHERE engagement = 'high';

default は PostgreSQL 予約キーワードであるため、引用符で囲む必要があります。 同期テーブル スキーマは Unity カタログ スキーマ名を継承するため、スキーマの名前が default の場合は、クエリで常に引用符で囲む必要があります。 他の識別子に関する引用符は省略可能です。

Lakebase SQL エディターで同期されたユーザー セグメントのクエリを実行する

これで、Lakehouseの分析をトランザクションデータベースから提供できる準備が整いました。

詳細情報: 同期テーブル | 同期モード | データ型マッピング

次のステップ