LINQPad でDatabricks のデータを操作する方法

LINQPad でDatabricks にLINQ クエリを実行する方法を解説します。

加藤龍彦
デジタルマーケティング

最終更新日:2023-09-15

この記事で実現できるDatabricks 連携のシナリオ

こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。

CData ADO.NET Provider for Databricks は、LINQ やEntity Framework などの標準のADO.NET インターフェースを使ってDatabricks の操作を実現します。この記事では、LINQPad から接続してLINQ クエリを実行する方法を説明します。

必要なもの

本記事の手順を実行してLINQPad からDatabricks に接続するには、以下の3つの製品が必要になります。

  • Databricks の環境
  • LINQPad
  • CData ADO.NET Provider for Databricks。右側のサイドバーから30日間無償トライアルがダウンロードできます

データモデルの作成

CData ADO.NET Provider for Databricks およびLINQPad をダウンロード・インストールしたら、Visual Studio で新しいクラスライブラリプロジェクトを作成します。

ADO.NET Provider の利用に必要となるEF 6を設定する方法については、ヘルプドキュメントを参照してください。

  1. プロジェクトを右クリックし、[追加]→[新しい項目]→[ADO.NET Entity Data Model]をクリックします。ダイアログが表示されたら、データベースから[Code First]を選択します。 [New Connection]をクリックして、表示されたウィザードで接続文字列オプションを指定します。

    New Connectionを選択して新しい接続設定を作成
  2. Databricks 接続プロパティの取得・設定方法

    Databricks クラスターに接続するには、以下のプロパティを設定します。

    • Database:Databricks データベース名。
    • Server:Databricks クラスターのサーバーのホスト名
    • HTTPPath:Databricks クラスターのHTTP パス。
    • Token:個人用アクセストークン。この値は、Databricks インスタンスのユーザー設定ページに移動してアクセストークンタブを選択することで取得できます。
    Databricks インスタンスで必要な値は、クラスターに移動して目的のクラスターを選択し、Advanced Options の下にあるJDBC/ODBC タブを選択することで見つけることができます。

    Databricks への認証

    CData は、次の認証スキームをサポートしています。

    • Basic
    • 個人用アクセストークン
    • Azure Active Directory(AD)
    • Azure サービスプリンシパル
    • OAuthU2M
    • OAuthM2M

    Basic

    Basic 認証には、ユーザー名とパスワードが必要です。以下を設定します。

    • AuthSchemeBasic
    • User:ユーザーネーム。これはデフォルト値("Token")をオーバーライドします。
    • Token:パスワード。

    その他の認証方法については、ヘルプドキュメント の「はじめに」セクションを参照してください。

    一般的な接続文字列は次のとおりです。

    Server=127.0.0.1;Port=443;TransportMode=HTTP;HTTPPath=MyHTTPPath;UseSSL=True;User=MyUser;Password=MyPassword;
  3. 希望するテーブルおよびビューを選択して[Finish]をクリックし、データモデルを作成します。

    下部のFinishをクリックしてデータモデルを作成
  4. プロジェクトをビルドします。生成されたファイルを使ってLINQPad でDatabricks 接続を作成できます。

LINQPad でDatabricks のデータに接続

必要な接続プロパティを取得してデータモデルアセンブリを作成したら、以下の手順に従ってLINQPad でデータモデルを使いはじめましょう。

  1. LINQPad を開き[接続の追加]をクリックします。

    接続の追加をクリック
  2. [Use a typed data context from your own assembly]オプションを選択します。

  3. [Entity Framework DbContext]を選択します。

    下部のフィールドから[Entity Framework DbContext]を選択
  4. [Path to Custom Assembly]ボックスの横にある[参照]をクリックして、プロジェクトフォルダを参照します。bin フォルダの下の.dll または.exe を参照します。

  5. DbContext の名前を選択します。
  6. 接続文字列をApp.Config に保存した場合は、App.Config へのパスを指定します。
DbContextの名前とApp.Configへのパスを指定

これでLINQPad 経由でDatabricks にクエリできます。サポートされたLINQ クエリの例は、ヘルプドキュメントの「LINQ およびEntity Framework」を参照してください。

LINQPad からDatabricksに接続

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。