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

接続の概要

備考

ベータ版

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

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

Lakebase Postgres データベース プロジェクトに接続する方法を学習します。

クイックスタート: データベースに接続する

次の 2 つの認証方法のいずれかを使用してデータベースに接続します。

  • OAuth ロール: OAuth トークンを使用して Databricks ID を使用して認証します。プロジェクトオーナーはすぐに接続できます。他の Databricks ID が OAuth 認証を使用できるようにするには、 databricks_auth拡張機能を使用して Postgres ロールを作成します。「OAuth ロールの作成」を参照してください。
  • ネイティブ Postgres パスワード認証: 従来のデータベース パスワードを使用して Postgres ロールで認証します。これらのロールは、Lakebase UI または SQL を使用して作成します。

以下の例では、標準の Postgres クライアントであるpsqlを使用していますが、Lakebase SQL エディター、テーブル エディター、または pgAdmin やその他の Postgres 互換クライアントなどのサードパーティ ツールを通じてデータベースにアクセスすることもできます。その他のオプションについては、 「データのクエリ」を参照してください。

各プロジェクトには、接続できるdatabricks_postgresという名前のデフォルトのデータベースが含まれています。このデータベースは、プロジェクトの作成時に自動的に作成される、Databricks ID の Postgres ロール (たとえば、 user@databricks.com ) によって所有されます。追加の Postgres ロールを作成するには、 「Postgres ロールの管理」を参照してください。

注記

すべてのデータベース接続には、24 時間のアイドル タイムアウトと最大 3 日間の接続寿命が適用されます。詳細:接続タイムアウト

OAuthロールで接続する

OAuth ロールを使用すると、トークンベースの認証で Databricks ID を使用して接続できます。プロジェクトオーナーの OAuth ロールは自動的に作成されます。他の Databricks ID が OAuth 認証を使用できるようにするには、 databricks_auth拡張機能を使用して Postgres ロールを作成する必要があります。「OAuth ロールの作成」を参照してください。

OAuth ロールで接続するには:

  1. Lakebase アプリからデータベース プロジェクトを選択し、 [接続] をクリックします。
  2. 接続するブランチ、コンピュート、データベースを選択し、 [ロール] ドロップダウン メニューからDatabricks ID を選択します。
  3. psql接続スニペットをターミナルにコピーして入力します。
  4. パスワードの入力を求められた場合は、 「OAuth トークンのコピー」 をクリックし、パスワードとして入力します。

OAuth接続ダイアログ

ネイティブPostgresパスワードで接続する

ネイティブ Postgres パスワード認証を使用すると、従来のデータベース パスワードを使用して Postgres ロールに接続できます。

ネイティブ Postgres パスワード認証で接続するには:

  1. Lakebase アプリからデータベース プロジェクトを選択し、 [接続] をクリックします。
  2. 接続するブランチ、コンピュート、データベースを選択し、 [ロール] ドロップダウン メニューから Postgres ロールを選択します。
  3. psql接続スニペットをターミナルにコピーし、入力して接続します。

Postgres ロール接続ダイアログ

注記

認証について: Lakebase は、OAuth 認証用の Databricks ID とデータベース アクセス用の Postgres ロールという 2 つの別個のシステムを使用します。詳細:認証

接続文字列を理解する

Lakebase 接続文字列には、ロール、ホスト名、データベース名が含まれます。ネイティブ Postgres パスワード認証の場合、接続文字列にはパスワードも含まれます。psqlを使用した OAuth 認証の場合、プロンプトが表示されたらパスワード (OAuth トークン) を別途入力します。

接続文字列の形式

OAuth認証:

postgresql://your-email@example.com@ep-abc-123.databricks.com/databricks_postgres?sslmode=require
^ ^ ^
role -| |- hostname |- database

ネイティブ Postgres パスワード認証:

postgresql://role_name:password@ep-abc-123.databricks.com/databricks_postgres?sslmode=require
^ ^ ^ ^
role -| | |- hostname |- database
|
|- password
注記

ホスト名には、 ep-プレフィックスを持つコンピュート エンドポイントの ID が含まれます (例: ep-abc-123 )。 これにより、データベースにサービスを提供する特定のコンピュートが識別されます。

接続文字列コンポーネント

個々のコンポーネントを使用して接続を構成できます。たとえば、これらを.envファイルに配置できます。

Bash
PGHOST=ep-abc-123.databricks.com
PGDATABASE=databricks_postgres
PGUSER=role_name
PGPASSWORD=your-password or token
PGPORT=5432

または、 DATABASE_URL変数に割り当てます。

Bash
DATABASE_URL="postgresql://role_name:password@ep-abc-123.databricks.com/databricks_postgres?sslmode=require"

接続セキュリティ

  • SSL /TLS 暗号化 : Lakebase (オートスケール Beta) では、すべての接続でSSL /TLS 暗号化を使用する必要があります。 sslmode=requireパラメーターはこの要件を強制します。 Lakebase アプリで提供されるすべての接続文字列には、このパラメーターがデフォルトで含まれています。
  • プライベート接続 : Lakebase (オートスケール Beta) は、 Databricksフロントエンド PrivateLinkを介した接続をサポートしています。 Lakebase Postgres (オートスケール ベータ) のフロントエンド PrivateLink サポートは、現在プライベート プレビュー段階にあります。 登録するには、Databricks アカウント チームにお問い合わせください。

ポート

Lakebase はデフォルトの Postgres ポート 5432 を使用します。

ネットワーク構成

クラシック コンピュートを Postgres に接続するには、ネットワーク セキュリティ グループで TCP ポート 5432 を 0.0.0.0/0 に開きます。

注記

クライアント側ファイアウォールがある場合は、Lakebase (オートスケール Beta) で使用される IP アドレスを許可リストに追加します。 リージョン別に IP アドレスを表示するには、 「Databricks コントロール プレーン アドレス」を参照してください。

アプリやフレームワークから接続する

以下の例は、さまざまなプログラミング言語やフレームワークから Lakebase データベースに接続する方法を示しています。Lakebase アプリの [接続] ダイアログからこれらの言語の接続スニペットを取得することもできます。

接続ダイアログの例

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

次のステップ

  • 認証- OAuthパスワードと Postgres パスワードの仕組み (VPN 有効期限や接続タイムアウトなど) を理解する
  • Postgres ロールの管理- Databricks ID の Postgres ロールを作成および管理し、事前に作成されたロールを理解します
  • 権限の管理- 権限を通じてPostgresロールにデータベースアクセスを許可する方法を学びます
  • データのクエリ- SQL エディタ、psql、またはその他の Postgres ツールを使用してデータベースをクエリします。