メインコンテンツまでスキップ

Lakebase Postgresを使い始める

備考

ベータ版

Lakebase Postgres (オートスケール Beta) は 次のリージョンで利用できます: us-east-1us-west-2eu-west-1

このベータ リリースは Lakebase の次のバージョンであり、評価目的でのみ利用できます。本番運用ワークロードの場合は、 Lakebase Public Preview を使用します。 どのバージョンが適しているかを判断するには、バージョンの選択を参照してください。

わずか数分で Lakebase Postgres を起動して実行できます。最初のプロジェクトを作成し、データベースに接続し、Unity Catalog の統合などの主要な機能を調べます。

Lakebase Postgres を有効にする (オートスケール Beta)

ワークスペースに Lakebase Postgres (オートスケール Beta) が表示されない場合は、ワークスペース管理者が [設定] > [ワークスペース設定] > [プレビュー機能] から有効にすることができます。 詳細については、 「Lakebase ベータ版へのアクセス」を参照してください。

最初のプロジェクトを作成する

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

アプリスイッチャー

[新しいプロジェクト] をクリックします。プロジェクトに名前を付け、Postgres のバージョンを選択します。プロジェクトは 2 つのブランチ ( productiondevelopment )、当然databricks_postgresデータベース、および各ブランチに構成されたコンピュート リソースを使用して作成されます。

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

コンピュートが有効になるまでに数分かかる場合があります。

プロジェクトのリージョンは、ワークスペースのリージョンに自動的に設定されます。詳細な構成オプションについては、 「データベース プロジェクトの作成」を参照してください。

データベースに接続する

プロジェクトから 本番運用 ブランチを選択し、 「接続」 をクリックします。 OAuth 認証を使用して Databricks ID を使用して接続することも、ネイティブの Postgres パスワード ロールを作成することもできます。接続文字列は、 psql 、pgAdmin、または任意の Postgres 互換ツールなどの標準の Postgres クライアントで機能します。

接続ダイアログ

プロジェクトを作成すると、Databricks ID の Postgres ロール (たとえば、 user@databricks.com ) が自動的に作成されます。このロールはデフォルトのdatabricks_postgresデータベースを所有し、 databricks_superuserのメンバーであるため、データベース オブジェクトを管理するための広範な権限が与えられます。

OAuth で Databricks ID を使用して接続するには、接続ダイアログからpsql接続スニペットをコピーします。

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

ターミナルでpsql接続コマンドを入力すると、OAuth トークンの提供を求められます。接続ダイアログの 「OAuth トークンのコピー」 オプションをクリックしてトークンを取得します。

接続の詳細と認証オプションについては、 「接続の概要」を参照してください。

最初のテーブルを作成する

Lakebase SQL エディターには、使い始めるのに役立つサンプル SQL がプリロードされています。プロジェクトから 本番運用 ブランチを選択し、 SQLエディターを開き、提供されたステートメントを実行してplaying_with_lakebaseテーブルを作成し、サンプル データを挿入します。 テーブル エディターを使用して視覚的なデータ管理を行ったり、外部 Postgres クライアントに接続したりすることもできます。

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

クエリオプションの詳細については、 SQL エディター|テーブル エディター| Postgres クライアントを参照してください。

Unity Catalogに登録する

本番運用ブランチにテーブルを作成したので、 Databricks SQL Editor からそのデータをクエリできるように、 Unity Catalogに本番運用データベースを登録しましょう。

  1. アプリスイッチャーを使用してレイクハウスに移動します。
  2. カタログ エクスプローラーで、プラス アイコンをクリックし、 カタログを作成します
  3. カタログ名を入力します (例: lakebase_catalog )。
  4. カタログ タイプとして Lakebase Postgres を選択し、 オートスケール ベータ オプションを有効にします。
  5. データベース プロジェクト、 productionブランチ、およびdatabricks_postgresデータベースを選択します。
  6. 作成 をクリックします。

Unity CatalogにLKBデータベースを登録する

SQLウェアハウスを使用して、 Databricks SQLエディターから作成したばかりのplaying_with_lakebaseテーブルをクエリできるようになりました。

SQL
SELECT * FROM lakebase_catalog.public.playing_with_lakebase;

これにより、Lakebase のトランザクション データをレイクハウス アナリティクスと結合するフェデレーション クエリが有効になります。 詳細については、 Unity Catalogに登録するを参照してください。

リバースETLでデータを同期する

Lakebase データを Unity Catalog でクエリ可能にする方法を説明しました。Lakebase は逆方向にも機能し、Unity Catalog から Lakebase データベースにキュレーションされた分析データを取り込みます。これは、レイク ハウスにエンリッチデータ、 ML機能、または集約されたメトリクス コンピュートがあり、それらを低レイテンシのトランザクション クエリでアプリケーションによって処理する必要がある場合に便利です。

まず、Unity Catalog に分析データを表すテーブルを作成します。SQLウェアハウスまたはノートブックを開いて実行します。

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 データベースに同期します。

  1. レイクハウス カタログ エクスプローラーで、 main > なんとか > user_segments に移動します。

  2. 作成 > 同期テーブル をクリックします。

  3. 同期を設定します。

    • テーブル名 : user_segments_syncedを入力します。
    • データベースの種類 : Lakebase サーバレス (ベータ) を選択します。
    • 同期モード : 1 回限りのデータ同期の場合は スナップショット を選択します。
    • プロジェクト、 本番運用 ブランチ、およびdatabricks_postgresデータベースを選択します。
  4. 作成 をクリックします。

同期が完了すると、テーブルが Lakebase データベースに表示されます。同期プロセスにより、Unity Catalog スキーマと一致するように Postgres にdefaultスキーマが作成され、 main.default.user_segments_synceddefault.user_segments_syncedになります。アプリスイッチャーを使用して Lakebase に戻り、Lakebase SQL エディターでクエリを実行します。

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

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

これで、レイクハウス アナリティクスがトランザクション データベースに保存できるようになりました。 継続的な同期、高度な構成、およびデータ型のマッピングについては、 「リバース ETL」を参照してください。

次のステップ

最初のプロジェクトを作成したら、次に推奨される手順をいくつか示します。