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

Databricks データ ソース

概要

Databricks は、データ エンジニアリング チームとデータ サイエンス チームが大規模なデータ処理、機械学習、分析を共同で行うことができる統合分析プラットフォームです。このトピックでは、Reveal アプリケーションで Databricks データ ソースに接続して、データを視覚化および分析する方法について説明します。

Prerequisites

Reveal で Databricks データ ソースを構成する前に、適切なデータベース ドライバーをインストールする必要があります。

これらのドライバーは、Databricks データ ソースへの接続を確立するために不可欠です。インストール後、Databricks のドキュメントに従ってドライバーが適切に構成されていることを確認します。

サーバーの構成

インストール

手順 1 - Reveal Databricks コネクタ パッケージをインストールします。

ASP.NET アプリケーションの場合、Databricks サポートを有効にするには、別の NuGet パッケージをインストールする必要があります。

dotnet add package Reveal.Sdk.Data.Databricks

手順 2 - アプリケーションに Databricks データ ソースを登録します。

builder.Services.AddControllers().AddReveal( builder =>
{
builder.DataSources.RegisterDatabricks();
});

接続の構成

// Create a data source provider
public class DataSourceProvider : IRVDataSourceProvider
{
public async Task<RVDataSourceItem> ChangeDataSourceItemAsync(IRVUserContext userContext, string dashboardId, RVDataSourceItem dataSourceItem)
{
// Required: Update the underlying data source
await ChangeDataSourceAsync(userContext, dataSourceItem.DataSource);

if (dataSourceItem is RVDatabricksDataSourceItem databricksItem)
{
// Configure specific item properties as needed
if (databricksItem.Id == "databricks_sales_data")
{
databricksItem.Table = "sales_data";
}
}

return dataSourceItem;
}

public Task<RVDashboardDataSource> ChangeDataSourceAsync(IRVUserContext userContext, RVDashboardDataSource dataSource)
{
if (dataSource is RVDatabricksDataSource databricksDS)
{
// Configure connection properties
databricksDS.Host = "your-databricks-instance.cloud.databricks.com";
databricksDS.HttpPath = "/sql/1.0/warehouses/abc123";
databricksDS.Port = 443;
databricksDS.Database = "default";
databricksDS.Schema = "public";
}

return dataSource;
}
}
Important

ChangeDataSourceAsync メソッドでデータ ソースに加えられた変更は、ChangeDataSourceItemAsync メソッドには引き継がれません。どちらの方法でも、データ ソース プロパティを更新する必要があります。上記の例に示すように、ChangeDataSourceItemAsync メソッド内で ChangeDataSourceAsync メソッドを呼び出し、データ ソース項目の基になるデータ ソースをパラメーターとして渡すことをお勧めします。

認証

Databricks の認証は、個人アクセス トークンを使用してサーバー側で処理されます。認証オプションの詳細については、「認証」トピックを参照してください。

public class AuthenticationProvider: IRVAuthenticationProvider
{
public Task<IRVDataSourceCredential> ResolveCredentialsAsync(IRVUserContext userContext, RVDashboardDataSource dataSource)
{
IRVDataSourceCredential userCredential = null;
if (dataSource is RVDatabricksDataSource)
{
// Use Personal Access Token
userCredential = new RVBearerTokenDataSourceCredential("your_personal_access_token", "your_userid");
}
return Task.FromResult<IRVDataSourceCredential>(userCredential);
}
}

クライアント側の実装

クライアント側では、データ ソースの ID、タイトル、サブタイトルなどの基本プロパティを指定するだけです。実際の接続構成はサーバー上で行われます。

データ ソースの作成

手順 1 - RevealView.onDataSourcesRequested イベントのイベント ハンドラーを追加します。

const revealView = new $.ig.RevealView("#revealView");
revealView.onDataSourcesRequested = (callback) => {
// Add data source here
callback(new $.ig.RevealDataSources([], [], false));
};

手順 2 - RevealView.onDataSourcesRequested イベント ハンドラーで、RVDatabricksDataSource オブジェクトの新しいインスタンスを作成します。titlesubtitle プロパティを設定します。RVDatabricksDataSource オブジェクトを作成したら、それをデータ ソース コレクションに追加します。

revealView.onDataSourcesRequested = (callback) => {
const databricksDS = new $.ig.RVDatabricksDataSource();
databricksDS.title = "Databricks";
databricksDS.subtitle = "Data Source";

callback(new $.ig.RevealDataSources([databricksDS], [], false));
};

アプリケーションが実行されたら、新しい可視化を作成すると、新しく作成された Databricks データ ソースが [データ ソースの選択] ダイアログに表示されます。

データ ソース項目の作成

データ ソース項目は、ユーザーが表示形式のために選択できる Databricks データ ソース内の特定のデータセットを表します。クライアント側では、ID、タイトル、サブタイトルを指定するだけです。

revealView.onDataSourcesRequested = (callback) => {
// Create the data source
const databricksDS = new $.ig.RVDatabricksDataSource();
databricksDS.title = "My Databricks Datasource";
databricksDS.subtitle = "Databricks";

// Create a data source item
const databricksDSI = new $.ig.RVDatabricksDataSourceItem(databricksDS);
databricksDSI.id = "databricks_sales_data";
databricksDSI.title = "My Databricks Datasource Item";
databricksDSI.subtitle = "Databricks";

callback(new $.ig.RevealDataSources([databricksDS], [databricksDSI], false));
};

アプリケーションが実行されたら、新しい可視化を作成すると、新しく作成された Databricks データ ソース項目が [データ ソースの選択] ダイアログに表示されます。

その他のリソース

API リファレンス