各製品の資料を入手。
詳細はこちら →Azure Data Lake Storage のデータをDevExpress Data Grid にデータバインドする。
Azure Data Lake Storage 用の CData ADO.NET プロバイダーをDevExpress Windows Forms とWeb コントロールとともに使用し、Azure Data Lake Storage をチャートに入力します。
最終更新日:2022-01-31
この記事で実現できるAzure Data Lake Storage 連携のシナリオ
こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
Azure Data Lake Storage 用の CData ADO.NET プロバイダーはサードパーティーコントロールで使うことのできる通常のADO.NET データベースアクセスコンポーネントを実装しています。データバインドするための通常のADO.NET プロセスに従うことで、UI コントロールから実データへの双方向アクセスを可能にします。 この記事では、CData を使ってDevExpress Windows Forms とウェブコントロールにデータバインドする方法を説明します。ここでは、最新のデータを表示するチャートにデータバインドします。
Azure Data Lake Storage 接続プロパティの取得・設定方法
Azure Data Lake Storage Gen 2 への接続
Gen 2 Data Lake Storage アカウントに接続するには、以下のプロパティを設定します。
- Account:ストレージアカウントの名前。
- FileSystem:このアカウントに使用されるファイルシステム名。例えば、Azure Blob コンテナの名前。
- Directory(オプション):レプリケートされたファイルが保存される場所へのパス。パスが指定されない場合、ファイルはルートディレクトリに保存されます。
Azure Data Lake Storage Gen 2 への認証
本製品は、次の4つの認証方法をサポートします:アクセスキーの使用、共有アクセス署名の使用、Azure Active Directory OAuth(AzureAD)、Managed Service Identity(AzureMSI)。
アクセスキー
アクセスキーを使用して接続するには、はじめにADLS Gen2 ストレージアカウントで利用可能なアクセスキーを取得する必要があります。Azure ポータルで:
- ADLS Gen2 ストレージアカウントにアクセスします。
- 設定でアクセスキーを選択します。
- 利用可能なアクセスキーの1つの値をAccessKey 接続プロパティにコピーします。
- AuthScheme:AccessKey。
- AccessKey:先にAzure ポータルで取得したアクセスキーの値。
接続の準備ができたら、次のプロパティを設定します。
共有アクセス署名(SAS)
共有アクセス署名を使用して接続するには、はじめにAzure Storage Explorer ツールを使用して署名を生成する必要があります。
接続の準備ができたら、次のプロパティを設定します。
- AuthScheme:SAS。
- SharedAccessSignature:先に生成した共有アクセス署名の値。
AzureAD、AzureMSI での認証方法については、ヘルプドキュメントの「Azure Data Lake Storage Gen 2 への認証」セクションを参照してください。
Windows Forms コントロール
下のコードでは、Azure Data Lake Storage でDevExpress のチャートに追加する方法を説明します。ADLSDataAdapter はチャートコントロールのSeries プロパティにバインドします。コントロールのDiagram プロパティはx 軸とy 軸をカラム名として定義します。
using (ADLSConnection connection = new ADLSConnection(
"Schema=ADLSGen2;Account=myAccount;FileSystem=myFileSystem;AccessKey=myAccessKey;")) {
ADLSDataAdapter dataAdapter = new ADLSDataAdapter(
"SELECT FullPath, Permission FROM Resources WHERE Type = 'FILE'", 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[] { "Permission" });
series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Qualitative;
series.ArgumentDataMember = "FullPath";
series.ValueScaleType = DevExpress.XtraCharts.ScaleType.Numerical;
chartControl1.Legend.Visibility = DevExpress.Utils.DefaultBoolean.False;
((DevExpress.XtraCharts.SideBySideBarSeriesView)series.View).ColorEach = true;
}

Web コントロール
下のコードではAzure Data Lake Storage でDevExpress Web を操作するための設定方法を説明します。ADLSDataAdapter はチャートのSeries プロパティにバインドします。Diagram プロパティはx 軸とy 軸をカラム名として定義します。
using DevExpress.XtraCharts;
using (ADLSConnection connection = new ADLSConnection(
"Schema=ADLSGen2;Account=myAccount;FileSystem=myFileSystem;AccessKey=myAccessKey;"))
{
ADLSDataAdapter ADLSDataAdapter1 = new ADLSDataAdapter("SELECT FullPath, Permission FROM Resources WHERE Type = 'FILE'", connection);
DataTable table = new DataTable();
ADLSDataAdapter1.Fill(table);
DevExpress.XtraCharts.Series series = new Series("Series1", ViewType.Bar);
WebChartControl1.Series.Add(series);
DataTable table = new DataTable();
series.ValueDataMembers.AddRange(new string[] { "Permission" });
series.ArgumentScaleType = ScaleType.Qualitative;
series.ArgumentDataMember = "FullPath";
series.ValueScaleType = ScaleType.Numerical;
((DevExpress.XtraCharts.SideBySideBarSeriesView)series.View).ColorEach = true;
}