Databricks のデータをDevExpress Data Grid にデータバインドする。

加藤龍彦
加藤龍彦
デジタルマーケティング
Databricks 用の CData ADO.NET プロバイダーをDevExpress Windows Forms とWeb コントロールとともに使用し、Databricks をチャートに入力します。

Databricks 用の CData ADO.NET プロバイダーはサードパーティーコントロールで使うことのできる通常のADO.NET データベースアクセスコンポーネントを実装しています。データバインドするための通常のADO.NET プロセスに従うことで、UI コントロールから実データへの双方向アクセスを可能にします。 この記事では、CData を使ってDevExpress Windows Forms とウェブコントロールにデータバインドする方法を説明します。ここでは、最新のデータを表示するチャートにデータバインドします。

Databricks 接続プロパティの取得・設定方法

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

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

Databricks への認証

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

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

個人用アクセストークン

認証するには、次を設定します。

  • AuthSchemePersonalAccessToken
  • Token:Databricks サーバーへの接続に使用するトークン。Databricks インスタンスのユーザー設定ページに移動してアクセストークンタブを選択することで取得できます。

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

Windows Forms コントロール

下のコードでは、Databricks でDevExpress のチャートに追加する方法を説明します。DatabricksDataAdapter はチャートコントロールのSeries プロパティにバインドします。コントロールのDiagram プロパティはx 軸とy 軸をカラム名として定義します。

using (DatabricksConnection connection = new DatabricksConnection(
"Server=127.0.0.1;HTTPPath=MyHTTPPath;User=MyUser;Token=MyToken;")) {
  DatabricksDataAdapter dataAdapter = new DatabricksDataAdapter(
  "SELECT City, CompanyName FROM Customers WHERE Country = 'US'", connection);

  DataTable table = new DataTable();
  dataAdapter.Fill(table);
  DevExpress.XtraCharts.Series series = new DevExpress.XtraCharts.Series();
  chartControl1.Series.Add(series);
  DataTable table = new DataTable();
  series.ValueDataMembers.AddRange(new string[] { "CompanyName" });
  series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Qualitative;
  series.ArgumentDataMember = "City";
  series.ValueScaleType = DevExpress.XtraCharts.ScaleType.Numerical;
  chartControl1.Legend.Visibility = DevExpress.Utils.DefaultBoolean.False;
  ((DevExpress.XtraCharts.SideBySideBarSeriesView)series.View).ColorEach = true;
}
The complete code example and the resulting chart.

Web コントロール

下のコードではDatabricks でDevExpress Web を操作するための設定方法を説明します。DatabricksDataAdapter はチャートのSeries プロパティにバインドします。Diagram プロパティはx 軸とy 軸をカラム名として定義します。

using DevExpress.XtraCharts;

using (DatabricksConnection connection = new DatabricksConnection(
"Server=127.0.0.1;HTTPPath=MyHTTPPath;User=MyUser;Token=MyToken;"))
{
  DatabricksDataAdapter DatabricksDataAdapter1 = new DatabricksDataAdapter("SELECT City, CompanyName FROM Customers WHERE Country = 'US'", connection);
  DataTable table = new DataTable();
  DatabricksDataAdapter1.Fill(table);
  DevExpress.XtraCharts.Series series = new Series("Series1", ViewType.Bar);
  WebChartControl1.Series.Add(series);
  DataTable table = new DataTable();
  series.ValueDataMembers.AddRange(new string[] { "CompanyName" });
  series.ArgumentScaleType = ScaleType.Qualitative;
  series.ArgumentDataMember = "City";
  series.ValueScaleType = ScaleType.Numerical;
  ((DevExpress.XtraCharts.SideBySideBarSeriesView)series.View).ColorEach = true;
}
An ASP.NET application created with the ADO.NET Provider and the DevExpress Web Forms control.(Salesforce is shown.)

はじめる準備はできましたか?

Databricks Data Provider の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

Databricks Icon Databricks ADO.NET Provider お問い合わせ

Databricks 連携のパワフルな.NET アプリケーションを素早く作成して配布。