🐨

DBツールのDBeaverと連携してみる(JDBCドライバ)

2025/01/20に公開

はじめに(TL;DR)

Data CloudのデータをSalesforce外部から分析したい場合、JDBCドライバーをサポートするBIツールを使用することができます。本記事では、無料で利用可能なデータベース管理ツール「DBeaver」とData Cloudを接続する方法をステップバイステップでご紹介します。これにより、SQLクエリを使用してData Cloudのデータにアクセスし、分析することが可能になります。

DBeaverとは?

DBeaver(https://dbeaver.io/)は、オープンソースのデータベース管理ツールおよびSQLクライアントです。 主な特徴として、

  • マルチプラットフォーム対応
  • 多数のデータベースに対応
  • ER図の自動生成機能
  • データのエクスポート・インポート機能
  • SQLエディタ機能

があります。

Data CloudとDBeaverの接続方法

1. DBeaverとの接続アプリケーションの設定

Salesforce組織の[設定]から、クイック検索ボックスに[アプリケーション]と入力し、[アプリケーションマネージャー]にアクセスします。右上の[新規接続アプリケーション]から、新規作成を行います。

必要な情報を入力します。

  • 接続アプリケーション名:Data Cloud DBeaver Connection(任意の名称)

  • API参照名:Data_Cloud_DBeaver_Connection(任意の名称)

  • 取引先責任者メール:ご自身のメールアドレス

  • OAuth設定の有効化:チェックON

  • コールバックURL: https://localhost
    ↑ユーザーとの対話を必要としないサーバー間の認証では、コールバックURLが実質的には使用されません。この場合、コールバックURLはhttps://localhostのように形式的に指定。

OAuth範囲の選択

  • API を使用してユーザーデータを管理 (api)
  • Data Cloud プロファイルデータを管理 (cdp_profile_api)
  • Data Cloud データに対する ANSI SQL クエリを実行 (cdp_query_api)
  • いつでも要求を実行 (refresh_token, offline_access)

上記入力したら、[保存]し、[次へ]

[コンシューマーの詳細を管理]をクリックするとメールアドレスに確認コードが届くため、そちらを入力します

詳細にアクセスできたら、コンシューマー鍵(clientId)とコンシューマーの秘密(clientSecret)を手元にコピーしておく(後ほど接続アプリケーションの有効化や、DBeaverとの認証に使用します。)
※コンシューマー鍵(clientId)とコンシューマーの秘密(clientSecret)は非常に重要な認証情報です。これらの情報は安全に管理し、第三者と共有しないようにしてください。また、プロダクション環境で使用する場合は、適切なセキュリティポリシーに従って管理することをお勧めします。

[設定]から、クイック検索ボックスに[OAuth]と入力し、[OAuth および OpenID Connect設定]にアクセスします。
[OAuth ユーザー名パスワードフローを許可]を[オン]にします。

2. DBeaverでの接続設定

お使いのPCにDBeaverをインストールします。(私はM1チップのMacを利用しているため、Apple Siliconようのdmgファイルからインストールしました)
https://dbeaver.io/download/

インストールできたら、DBeaverを開きます。ウインドウ左上のコンセントのマークをクリックすると新規接続のウィンドウが開きます。こちらの一覧の中に、[Salesforce Data Cloud]がありますので、こちらを選択して[次へ]をクリックします。
(つまり、DBeaverは標準でData Cloudへのコネクタが用意されており、こちらの仕組みとしてはJDBC Driver経由ということになります。)

[一般タブ]の認証(Database Native)にある

  • ユーザー名
  • パスワード
    にSalesforceのユーザー名、パスワードを入力します。

[ドライバのプロパティ]タブの中で右クリックをして2つのパラメータを定義します。

  • clientId:コピーしておいたコンシューマー鍵(clientId)を貼り付け
  • clientSecret:コピーしておいたコンシューマーの秘密(clientSecret)を貼り付け

入力できたら左下にある[テスト接続]をクリックし、接続成功していることを確認します。[OK]をクリックします。

Data CloudをDBeaver上で操作してみる

接続後、以下のような操作が可能になります:

  • データの閲覧

    • Data Cloudのスキーマ、テーブルが表示されます
    • テーブルを選択すると、カラム情報やデータ内容を確認できます

  • SQLクエリの実行

    • SQLエディタでクエリを入力して実行できます
    • 例:SELECT id, name_c FROM booking_c LIMIT 10;
  • データの分析

    • クエリ結果のグラフ化やCSVエクスポートが可能です

おわりに

Data CloudとDBeaverをJDBCドライバー経由で接続する方法をご紹介しました。
データアナリストがData Cloudのデータを既存の分析ワークフローに統合する際に特に有用です。SQLスキルを持つ開発者がData Cloudのデータを活用できるようになります。
ぜひ、この方法を試してData Cloudのデータ活用の幅を広げてみてください!

参考情報

Salesforce 公式Help:

DBeaver:

※本記事は、私が所属する会社とは一切関係のない事柄です。

Discussion