EspressChartでDB・テキストファイルから動的グラフ作成(APIからの編集, Servlet利用編)

JDBC/ODBC対応のデータベースや、CSVやXMLなどのテキストファイルをソースとしてチャート・グラフ作成が可能なEspressChartについて紹介しております。
本ブログでは、既存のJavaアプリケーションやアプレットを利用してチャート作成/編集が可能なチャートAPIでの操作について記載いたします。
コーディングいらずでGUIから簡単にグラフの作成ができるチャートデザイナーについての記事もございますので、こちらから参照ください

EspressChartとは?
EspressChartは、SQL ServerやOracle、DB2といったJDBC/ODBC対応のデータベースや、CSVやXMLなどのテキストファイルなどをソースとして、動的にチャートの生成が可能なツールです。
チャートを生成する際にも、コードを書く手間なくGUI上で視覚的に編集ができるチャートデザイナーを利用して生成したり、Java上でチャートを生成・編集したりすることが可能です。

また、生成したチャートをテンプレート(チャート)ファイルとして保存することができ、以下の形式で保存可能です。
このファイルを利用して、再度チャートデザイナー上で編集したり、API上でチャートを出力させたりできます。

  • TPL形式:チャートデザインとソースデータの接続情報を含んで保存
  • CHT形式:チャートデザインとソースデータの接続情報、作成時のチャートデータを含んで保存
  • PAC形式:チャートデザインとソースデータの接続情報、作成時のチャートデータに加え、参照画像データも含んで保存

・チャートデザイナー画面

・APIを利用してチャートを編集

チャートファイルを画像ファイルとして保存

チャートデザイナー等で作成したチャートファイルをJavaアプリケーションで読み込ませて、画像ファイルとして保存しておくことが可能です。
チャートファイルの参照パスを変更するだけで簡単に画像に変換するコードを作成しておくこともできます。

作成例:

import java.applet.Applet;
import quadbase.ChartAPI.QbChart;

public class SaveFile extends Applet {

	static final long serialVersionUID = 1;

	public static void main(String[] args) {
		try {
			SaveFile chart = new SaveFile();
			chart.doExportChart(null);

		} catch (Exception ex) {
			ex.printStackTrace();
		}
	}

	void doExportChart(Applet parent) {
		String filename = "cht/sample1.cht";
		String savefile = "image/exportChart.png";

		QbChart.setEspressManagerUsed(false);

		QbChart chart = new QbChart(parent, filename);

		try {
			chart.export(QbChart.PNG, savefile);
			System.out.println("Success");
		} catch (Exception ex) {
			System.out.println("Failed");
			ex.printStackTrace();
		}
	}
}

API上でチャートファイルを編集

作成したチャートをチャートデザイナー上で再編集もできますが、API上で編集することもできます。
背景色やグラフ幅、Y軸の最大値と間隔などをAPI上でも細かく調整可能です。

作成例:

import java.applet.Applet;
import java.awt.Color;
import java.io.IOException;

import quadbase.ChartAPI.QbChart;

public class EditChart extends Applet {
	public static void main(String args[]) throws Exception {
		QbChart.setEspressManagerUsed(false);
		Applet parent = null;
		QbChart chart = new QbChart(parent, "cht/sample1.cht");

		try {
			chart.export(QbChart.PNG, "image/sample1_before.png");
			System.out.println("Success");
		} catch (IOException e) {
			e.printStackTrace();
		}
		
		int scalestep = 1500000;
		int maxScale = 7500000;
		Color c = new Color(200, 200, 200);
		
		chart.gethCanvas().setBackgroundColor(c); 
		chart.gethDataPoints().setBarGapToWidthRatio((float) 0.4);
		chart.gethYAxis().setScaleStep(scalestep);
		chart.gethYAxis().setMaxScale(maxScale);
		try {
			chart.export(QbChart.PNG, "image/sample1_after.png");
			System.out.println("Success");
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

0からソースデータを作成してチャートを生成

API上でデータベースやテキストファイルをソースデータとして読み込ませてチャートを生成することはできるのですが、コード内でソースデータを作成してそれをチャートに読み込ませることも可能です。
元となるチャートについてはチャートデザイナーで作成したもの使い、ソースデータはコード内で作成したもの使用することができます。

作成例:

import java.applet.Applet;
import java.io.IOException;

import quadbase.ChartAPI.QbChart;
import quadbase.ChartAPI.DbData;

public class ReadDataChart extends Applet {
	public static void main(String args[]) throws Exception {
		QbChart.setEspressManagerUsed(false);
		//QbChart.setForExportOnly(true);
		Applet parent = null;
		int dimension = QbChart.VIEW2D;
		int chartType = QbChart.COL;

		String dataType[] = { "date", "string", "int" };
		String fieldName[] = { "Date", "Beverage", "Sales" };
		String records[][] = { { "2023-07-01", "Water", "5000000" }, { "2023-07-01", "Tea", "4000000" },
				{ "2023-07-01", "Juice", "3000000" }, { "2023-08-01", "Water", "5500000" },
				{ "2023-08-01", "Tea", "4000000" }, { "2023-08-01", "Juice", "4000000" },
				{ "2023-09-01", "Water", "4500000" }, { "2023-09-01", "Tea", "4500000" },
				{ "2023-09-01", "Juice", "4000000" }, };
		DbData data = new DbData(dataType, fieldName, records);

		QbChart chart = new QbChart(parent, dimension, chartType, data, null, "tpl/sample1.tpl");

		try {
			chart.export(QbChart.PNG, "image/sample1_imputData.png");
			System.out.println("Success");
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

}

Servletを利用してWeb上でチャートを表示

Java Servletを利用することによりWeb上でチャートを生成して表示させることも可能です。
参考:チャートをWEB上で表示するサンプルの紹介[EspressChart]

Web上でチャートを生成して表示させるためのJavaファイルをコンパイルし、Web上で読み込ませる用のClassファイルを生成します。

xmlファイルの編集をし、作成したClassファイルを読み込ませるための設定やブラウザ上で表示させるためのURLを指定します。

TomcatサーバとEspressManager(EspressChartアプリケーションプロセス)を起動後、HTMLファイルにアクセスして「Get Chart Image」をクリックすることでチャートをWeb上で表示させることができます。

まとめ

EspressChartでは、チャートデザイナーで動的にチャートを作成するだけでなく、APIを利用して調整したり、サーブレットと連携してWeb上でチャートを表示させたりすることもできます。
今回使用したコードにつきましては、下記URLにて確認できます。
http://data.quadbase.com/Docs70/ec/help/apidocs/index.html

お問合せ先

チャート作成ツールご検討中の方やご興味のある方は、下記ページにてお問合せください。
https://www.climb.co.jp/soft/espresschart/download/

タグ: , ,

BigQueryのデータからEspressReport ESでレポート/KPIアラートを作成する方法 Part2

Part1のブログ記事では、BigQueryのデータを可視化するために、EspressReport ES(以下ERES)からBigQueryのデータにアクセスする方法をご紹介しました。

本ブログでは、実際にBigQueryのデータをチャート(グラフ)やレポートとして可視化させ、可視化したデータに対してKPI(主要業績評価指標)アラートの作成を行ってみます。いずれもERESのGUI操作のみで楽々可能です。

  

チャートやレポートの作成(データの可視化)

まずは、BigQuery側にデータを作成するため、ERESに同梱されているサンプルデータをCSVとしてBigQueryにインポート/アップロードし、「Orders」「Order_Details」Products」 という3つのサンプルテーブルを作成しました。

  

次に可視化対象のデータをSQLクエリやERESのクエリビルダーを使用して抽出します。クエリビルダーでは、テーブルやカラムをGUIで選択するのみで、可視化したいデータを抽出できます。

  

今回は下記のようなデータをデータシートとして抽出しました。

  

後はチャートウィザードやレポートウィザードから作成したデータシートを指定し、ウィザードを流すだけでチャートやレポートが簡単に作成できます

  

今回は四半期の営業利益状況を確認できるチャートとレポートを作成し、ERESダッシュボード上に配置、一覧で確認できるようにしました。

  

チャートとレポート作成によりデータの可視化ができましたので、次にこれらにKPIアラートを設定してきます。

KPIアラートの設定は、基本的に下記3ステップで簡単に行えます。

  

STEP1. チャートやレポートでアラートを作成

まずは、作成したチャートやレポート上でアラートを作成します。アラートの作成は各チャートやレポートで簡単に設定可能で、例えば、今回作成した四半期の営業利益状況のグラフに対しての場合、下記画像のようにコントロールエリアからアラート(ラベル)名と閾値を指定するだけで、利益が目標値に達していないといったKPIに関するアラートを発令させることが可能です。

  

レポートの場合も、アラートの設定から、アラート名と対象カラム、条件等を指定するだけで可能です。今回のレポートの場合、目標値に達していないクォーターの利益が赤ハイライトで表示されます。

  

STEP2. ダッシュボードアラートの設定

次にダッシュボード上でアラートの設定を行います。ダッシュボードの設定画面で対象のチャートやレポート上の「!」のアイコンを選択することで設定可能です。STEP1で設定したアラート名が表示されるので、監視したいアラートを選択し、ポップアップするメッセージなどを入力します。

  

設定後ダッシュボード画面を閲覧すると、アラートが発生している場合、アラートメッセージがポップアップされることや、対象チャートやレポートが点滅表示されることが確認できます。

  

これにより、ERES上のダッシュボードを閲覧するだけで、一目でKPIに関するアラートを確認できるようになります。

  

STEP3. モニタリングアラートの作成

最後にスケジュールでアラートをトリガーできるモニタリングアラートを作成します。モニタリングアラートはERESのオーガナイザーの画面で、設定したいダッシュボードや、チャート、レポートを選択し「アラート監視設定」を押下することで行えます。

  

上記画像のようにスケジュール監視対象とするアラートを指定し、アラート名監視するタイミングを設定します。また、下記画像のようにアラートをトリガーした場合にメール通知や通知内容のカスタマイズを行うことも可能です。

  

メール通知時には対象チャートやレポートを添付することもできますので、これによりERESのダッシュボード画面を閲覧せずとも、常にKPIを監視することが可能です。

  

このように、ERESを使用することで、BigQuery(GA4)のデータを可視化、KPIの監視が簡単に実施できます。ご不明な点等ございましたらこちらから弊社クライムまでお気軽にお問い合わせください。

タグ: , , , , , , ,

ダッシュボード デザインの10原則

魅力的で効果的なダッシュボードを作成するには

デジタル時代の今日、ダッシュボードはビジネスや生活のさまざまな局面で、私たちの意思決定に多大な影響力を持つようになっています。特にIT分野では、正確なデータからより良いインサイトを引き出すためのツールとして、ダッシュボードは欠かせない存在となっています。ダッシュボードの出来不出来がビジネスを左右すると言っても過言ではなく、デザインの基本原則に忠実な、質の高いダッシュボードがあらゆる現場で求められています。

ダッシュボード デザインの基本原則とは、すなわちデータの提示方法の原則です。データを効果的に可視化し、ビジネス インサイトを効率的に引き出し、シンプルで見やすく、そして何よりも使いやすいことが求められます。

本稿では、優れたダッシュボードに共通するデザイン原則をまとめ、より効果的なダッシュボードの作り方について考察します。

ダッシュボード デザインの基本原則に進む前に、まず、ダッシュボードとはそもそも何なのか、優れたダッシュボードにはどのような要素が含まれているのか、について簡単に整理しておきましょう。

ダッシュボードとは何か?

クルマのダッシュボードは、誰でも一度は見たことがあるのではないでしょうか。毎日見ている人も多いことでしょう。速度計、タコメーター、燃料計、水温計、走行距離など、ドライバーにクルマの基本的かつ重要な情報を提示するものです。単に提示するだけでなく、とてもシンプルにわかりやすく提示してくれます。

これは、そのまま管理者用ダッシュボードの基本に通ずることです。つまり、ダッシュボードとは、その対象物に属するデータを的確に整理された統計だった方法で提示するユーザーインターフェースです。たとえば、ビジネスの各種指標やKPIに関するデータを効果的に可視化して、表示するのがダッシュボードです。

そして、まさにこれが、冗長な月次レポートや四半期レポートよりも、ダッシュボードが好まれる所以です。クルマを運転するように、常にビジネス運営に心血を注いでいる企業の意思決定者は、レポートをじっくり読むよりも、ダッシュボードを見て即座に判断を下せたほうが、流動的な市場動向にいち早く対応できます。

さらに、ダッシュボードは即応性のみならず、分析性においてもレポートより優れています。特別な専門知識がなくても、グラフやチャートを簡単に分析でき、適切な意思決定を促進してくれるのは、ダッシュボードならではの利点です。

優れたダッシュボードの構成要素

ダッシュボードを用意すれば、ただちにデータに関わる課題が解決できるわけではありません。データをより良く分析するには、より良いダッシュボードが必要です。では、良いダッシュボードとは、一体どういうものでしょうか。

良いダッシュボードの条件は、そのダッシュボードの目的に見合うすべての必要事項を備えていることです。さらに、ユーザーエクスペリエンスを高め、課題の解決へと導けるかどうかが、良いダッシュボードの決め手となります。ダッシュボードに含まれる要素の代表例としては、以下が挙げられます。

  • KPI(重要業績評価指標)
  • 可視化データ
  • フィルター
  • アラート
  • 文脈情報
  • ユーザーフレンドリーなインターフェース

ダッシュボードデザインの基本原則

ダッシュボードとはそもそも何なのか、そして良いダッシュボードに含まれる要素とは何かを確認したら、いよいよ、ダッシュボードデザインの10原則を順に見ていきましょう。

1. 対象オーディエンスを理解する

すべてのダッシュボードには、それを作成する目的があります。問題解決策の提案、分析情報の提示、KPIの確認など、目的はさまざまですが、その先には必ずオーディエンスが存在します。誰に向かって情報を提供しているのかを見定めれば、採るべきデザイン プロセスが自ずと見えてきます。

対象となるオーディエンスに求められる情報を揃え、そのオーディエンスに適した可視化の手段を選択することになります。たとえば、eコマース関連の分析用ダッシュボードなら、売上合計額、ウェブサイトの統計情報、取引内容、純利益などの指標を含めます。

2. KPIを設定する

KPIとは、Key Performance Indicator(重要業績評価指標)の略であり、ビジネスやプロジェクトにおける目標への到達度を数値で示す指標です。

ダッシュボードを作成するとき、最初にやらなければならないのは、目標の設定と対象オーディエンスの定義です。それが決まれば、ダッシュボードで表示すべき最適なKPIも決まります。KPIが決まれば、ダッシュボードのデザインが正しい軌道に乗ったと言えるでしょう。KPIは、可視化された情報を適切なインサイトに置き換えるための鍵となるものです。

3. データを正しく可視化する

ダッシュボードが普及した今日、ありとあらゆるグラフやチャート、データ指標を目にする機会が増えました。時には、過度なデータの可視化も目に付くようになりました。ダッシュボードを作成するとき、可視化できるものはどんどん可視化して、情報を詰め込みすぎてしまう人は少なくないようです。データの可視化は、目的に合わせて正しく活用しなければ、逆効果です。たとえば、比較を示したり、データの異なる構成要素を示したり、時間の経過に沿った傾向を表したりするには、棒グラフが有効です。このように、データの可視化形態を用途に応じて選別する必要があります。

正しい指標を選択するのは、ダッシュボード デザインの大原則です。大量のグラフやチャートでダッシュボードを煩雑にしてしまわないように、データを可視化するときは、それを提示する意義を慎重に考慮することが重要です。

4. ミニマリストになる

情報は少ないほど、よく伝わります。クリエイティブできらびやかなダッシュボードを見かけることもよくありますが、長い目で見た場合、そのようなダッシュボードは効果的ではありません。経験豊富なデザイナーほど、的を絞った、すっきりしたダッシュボードを作る傾向があるのはそのためです。

ダッシュボードのデザインを最小限に抑えれば、見る人の集中力を高める効果も期待できます。わかりやすさを第一に、過度な情報や不適切な可視化を削ぎ落すことも、ダッシュボードデザインの鉄則です。

5. ダッシュボードのタイプを特定する

これから作るダッシュボードのタイプを特定せずに、デザインを推し進めるのは危険です。原則1の繰り返しになりますが、対象オーディエンスのユーザーグループに適したデザインを、最初に選択する必要があります。その特定のグループに属する人たちが、正しくビジネスを分析でき、意思決定を行えるように支援することが、ダッシュボードの最大の目標です。

ダッシュボードの種類は、そこに含めるべき主要情報にもとづいて選択します。ダッシュボードには、大きく分けて次の5つの種類があります。Strategic(戦略型)、Operational(運用型)、Analytical(分析型)、Tactical(戦術型)、Specific(特定型)の5種類です。

たとえば、長期戦略をモニタリングして分析したいときは、戦略型ダッシュボードを使用します。短期的な状況分析を行うには運用型ダッシュボード、競合他社や市場動向など、トレンド分析を行うには分析型ダッシュボードが適しています。

6. インタラクティブな要素を取り入れる

ダッシュボードにインタラクティブな要素を取り入れると、ユーザーエクスペリエンスが向上します。インタラクティブな要素とは、クリックなどのユーザーアクションに対応できる要素のことです。これを、ダッシュボードの重要な部分に置くと、より強くユーザーの注意を引くことができます。

インタラクティブな要素の例としては、インタラクティブ グラフ/カード、アニメーション、インタラクティブ タイムライン、色彩効果などが挙げられます。

インタラクティブな要素は、ユーザーを引き込むだけでなく、ユーザーが視点を変えて、違った角度からデータを分析するのを助ける効果があります。それによって、データ主導の意思決定が円滑化されます。

7. 多種多様なスクリーンに対して最適化する

コアウェブバイタルとSEO(検索エンジン最適化)の観点から、レスポンシブなデザインがダッシュボードにもたらす効果は絶大です。利便性と柔軟性を改善することで、あらゆるスクリーンで同等の効果を発揮できるようにすることは、ウェブサイトのデザイン同様、ダッシュボードにも求められています。

たとえば、ダッシュボードの構成要素の配置は、作成時に自分の画面で見ているのと同じレイアウトで各ユーザーに対しても表示されるとは限りません。構成要素の配置を慎重に検討して、ユーザー エクスペリエンスを高めることも、ダッシュボード デザインの基本原則の1つです。

8. データ可視化のよくある間違いを回避する

データの可視化形態を厳選すべき点は、前述のとおりですが、一般的によくある間違いを認識し、回避することも重要です。あと1か所だけ修正すればすごく良くなるのに、という残念なダッシュボードをよく見かけます。ダッシュボード作成時に、データ可視化のよくある間違いを点検すれば、完成したダッシュボードが「残念なダッシュボード」になることはありません。ダッシュボード デザインで陥りがちな過ちの代表例は、以下のとおりです。

  • 不適切なラベリング
  • 不適切なチャート
  • 情報の詰め込みすぎ
  • 誤解を招く色使い
  • 不適切な3Dグラフィック

9. 統一性を保つ

ダッシュボードのデザインには一貫性も重要です。一貫性が保たれていれば、オーディエンスが混乱することなく、安心して内容に集中できます。また、そのようなデザインは、ユーザーを効果的にナビゲートして、正しいアクションや意思決定に導くことができます。

統一性のあるデザインは、ラベリング、フォーマット、文体、用語、サイズ、グラフィックボタン、ドロップダウンリストなど、あらゆる要素に対して考慮すべき基本原則です。

10. 適切なレイアウトを使用する

レイアウトとフォーマットは、ダッシュボード デザインの根幹を成すものです。ダッシュボードの構成要素を適切なレイアウトで整理すれば、必要な情報がより伝わりやすくなります。

一般的には、最重要な情報を最初に提示するのが基本ルールです。ほとんどのユーザーは画面を左から右、上から下に見ていくので、いちばん大切な要素は画面の左上に配置するのが鉄則です。また、大局的な情報を先に提示してから、より細かい、具体的な情報へと進んでいくのも、一般的なデザイン原則です。たとえば、トレンド分析のダッシュボードの場合、すべての主要動向を最初にひと目で確認できるように提示してから、具体的な内容に進めば、ユーザーがより的確に状況を把握できるようになります。

まとめ

以上、ダッシュボード デザインの基本原則を紹介してまいりました。この原則にしたがえば、シンプルでわかりやすく、的確に整理された、効果的な構成のインタラクティブなダッシュボードを作成することができます。

ただし、これらは、個々のプロジェクトの要件に応じて取り入れることが重要です。すべてを取り込むことが良いとは限りません。何が目的で、それに対してどのような効果を期待するのか、慎重に検討しながら、ダッシュボード作成を進めてください。

編集後記

ダッシュボード詳細設計の項目例

  項目名 記入例/内容
1 ダッシュボード名 商品販売実績バッシュボード
2 チャートエリア名 商品別販売状況分析エリア
3 チャートの役割 売れ筋商品の把握
4 チャートの指標 売上、販売数、決済回数
5 チャートの比較軸 商品名、商品カテゴリ
6 チャートの形式/種類 棒グラフ(x:商品名, y:売上金額)
7 フィルター要素 集計期間・商品カテゴリ
8 データマート 分析DM_商品売上実績
9 指標の計算ロジック 売上=SUM([売上])
10 指標の目標値設定 目標:月間1億円

出所:ビジネスダッシュボード設計・実装ガイドブック

<< EspressReport ESダッシュボードに関るホワイトペーパー >>

次のビデオでは、EspressDashbordEspressReport ESのダッシュボードを作成する際の基本的な機能について説明します。また共有パラメータの設定方法や、共通フィールドによるコンポーネントのリンク方法について紹介しています。

タグ: , , , ,

Javaで作成したソースデータをチャートデザイナで使う方法

EspressChartでは、SQL ServerやOracle、DB2といったJDBC/ODBC対応のデータベースや、CSVやXMLなどのテキストファイルなどをソースデータとしてチャート作成が可能です。

また、以下のようにJava上でソースデータを作成した場合でも、Java上でのチャート作成に限らずチャートデザイナ上でデータを読み込ませてチャートを作成することもできます。

Java上で作成したソースデータをチャートデザイナ上で使うにはJava Classファイルを読み込ませます。
今回はEspressChartの環境とは別のJava実行環境で作成したデータソース(Classファイル)を読み込ませるための設定方法について記載します。

Classファイルを作成する

ClassファイルはJavaのソースコードをコンパイルした際に作成されるファイルとなりますので、
JavaファイルをEclipse環境等でプログラムを実行することで作成されます。

また、Classファイルをソースデータとして読み込ませるには、以下の情報が必要となります。
String datatype[]:データベースのデータの型を定義する配列(例:int、double、date)
String fieldname[]:レコード内の各フィールドの名前の配列
String records[][]:レコードの配列

作成例:

import java.awt.*;
import quadbase.ChartAPI.*;
import quadbase.util.*;

public class SampleData implements IDataSource {

	// Setting DbData for passing data as arguments
	String dataType[] = { "string", "string", "double", "double" };
	String fieldName[] = { "Region", "Product", "Sales", "Quantity" };
	String records[][] = { { "East", "Chair", "825.00", "4" }, { "East", "Table", "1211.00", "1" },
			{ "Midwest", "Dresser", "2214.00", "1" }, { "Midwest", "Table", "1211.00", "1" },
			{ "Midwest", "Cabinet", "4021.00", "2" }, { "West", "Chair", "695.00", "2" },
			{ "West", "Table", "1211.00", "1" }, { "West", "Dresser", "2214.00", "1" } };
	DbData data = new DbData(dataType, fieldName, records);

	// create a empty constructor
	public SampleData() {
	};

	// implement getResultSet
	public IResultSet getResultSet() {
		return data;
	}
	
	public static void main(String args[]) {
		
	}
	
}

 

Classファイルが作成できましたら、次の手順でClassファイルの配置を行います。

Classファイルをチャートデザイナで読み込ませる

チャートデザイナのデータソース管理画面でClassファイルを読み込ませるには、2つの条件がございます。

1.File:で指定したディレクトリにClassファイルが存在していること
例:QB.SampleData
  →EspressChartインストールディレクトリ\QB\SampleDataにSampleData.classを配置

2. Classファイル内で保持しているパッケージの情報とFile:で指定した場所が一致していること
例:SampleData.class で保持しているパッケージ情報が QB\SampleData
  →File:でQB.SampleData と指定する

上記設定をすることで、別のJava実行環境で作成したデータソース(Classファイル)であっても、
チャートデザイナでデータソースとして読み込ませることが可能です。

▼Classファイルから読み込んだデータ

▼読み込んだデータから作成した円グラフ

タグ: , ,

BigQueryのデータからEspressReport ESでレポート/KPIアラートを作成する方法 Part1

今回は、CData社のJDBCドライバを使用して、EspressReport ESからGoogle BigQueryのデータにアクセスし、可視化する方法を説明します。CData Softwareでは、BigQuery、Dynamics 365、JIRAなどに接続できる約250種類の様々なJDBCドライバを提供しています。

これらの各種JDBCドライバとEspressReport ESを利用することで、より効率的な運用が可能となり、クラウドやSaaSアプリケーションであらゆる種類のデータソースからデータにアクセスし、堅牢なレポートやビジュアル分析を行うことができます。

ドライバーの準備

以下のURLからWindows、Linux、Macなどの各システムに対応したインストールパッケージをダウンロードできます。
https://www.cdata.com/drivers/bigquery/download/jdbc/

 

今回はWindowsパッケージを使用して接続を行ってみます。
インストーラーをダウンロード、実行し、ダイアログに従ってセットアップを進めます。

 

デフォルト設定のままインストールを完了させた場合、JDBCドライバが「C:\Program Files\CData\CData JDBC Driver for Google BigQuery 2022J\lib」 に配置されていることを確認します。

 

「C:\Program Files\CData\CData JDBC Driver for Google BigQuery 2022J\lib」内の以下の3つのファイルを「<ERESインストールフォルダ>\WEB-INF\lib」フォルダにコピーします。

 

接続ステップ

Google Cloud BigQueryサンドボックスの有効化

1. Google Cloudコンソールで、BigQueryに移動します。
また、以下のURLを入力することで、Google CloudコンソールでBigQueryを開くことができます。
https://console.cloud.google.com/bigquery
Google Cloudコンソールは、BigQueryリソースの作成と管理、SQLクエリの実行などが可能なグラフィカルインターフェイスです。


2. ウェブブラウザでGoogleアカウントにログインしていない場合、既存のGoogleアカウントを使用して認証するか、新しいアカウントを作成する必要があります。

 
3.CREATE PROJECT をクリックします。

4.「新規プロジェクト」ページで、次の操作を行います:

4-1. プロジェクト名には、プロジェクトの名称を入力してください。
4-2. 「組織」については、組織を選択するか、組織に所属していない場合は「組織なし」を選択します。
4-3. ロケーションの選択を求められた場合は、「参照」をクリックし、その中から
プロジェクトに適した場所を指定します。
4-4. Create をクリックします。Google Cloud コンソールの BigQuery ページにリダイレクトされます。

BigQueryサンドボックスの有効化に成功しました。BigQueryサンドボックスのお知らせがBigQueryのページに表示されます:

BigQueryプロジェクトにデータセットを追加

3点リーダをクリックし、”データセットの作成 “をクリックします。

データセット名の入力とロケーションを指定します。
今回の例では”covid “としています。”Create Dataset “をクリックします。

BigQueryのデータセットにデータを追加する

作成したプロジェクトまたはデータセットをクリックし、「追加」をクリックします。

次のURLからサンプルデータをダウンロードできます:
https://drive.google.com/uc?export=download&id=1T1loDQ_5MNvjLjYPmhhb-ZmqCQrXV7LK

ADDをクリック、「ローカルファイル」を選択し、「テーブルを作成」をクリックします:

 

CData Testing Toolで接続をテスト

CDataが提供する接続テストウィンドウを開くには、ドライバがインストールされているディレクトリ内の cdata.jdbc.googlebigquery.jar パッケージダブルクリックします。
以下のようにパラメータを設定します:

コンフィギュレーション項目 バリュー
Authスキーム

OAuth

プロジェクトID Google CloudプロジェクトID(プロジェクトIDの取得方法は前項をご覧ください。)

イニシエートOAuth

GETANDREFRESH
データセットID 選択したデータセットの名前です。この例では、データセットIDを使用しています。(Covid)
デスティネーション・テーブル 大きなクエリが一時的に格納されるテンポラリテーブルで、テーブルの名前以外の名前を付けると、その中のデータが上書きされてしまいます。

” Test Connection ” をクリックすると、自動的にOAuth認証のウェブページが表示されます。接続を成功させるためには、認証に同意し、アカウント情報を保存する必要があります。より詳細な情報については、でドキュメントを参照してください:

https://cdn.cdata.com/help/DBH/jdbc/RSBGoogleBigQuery_c_OAuth.htm

接続テストに成功したら、ERESでの接続に必要な「接続文字列」の情報をコピーしてください。ERESで接続するために必要なConnection Stringをコピーします。以下は、そのString例です:
j dbc:googlebigquery:AuthScheme=OAuth;ProjectId=customers-387519;DatasetId=covid;DestinationTable=data2;InitiateOAuth=GETANDREFRESH

ERESオーガナイザーを起動する

EspressReport ESでBigQueryのデータを元にレポートを作成してみよう。EspressReport ES(エスプレスレポート イーエスは、接続情報を管理・可視化するために、Organizerというツールを使用しています。にログインしてください。

左メニューから「オーガナイザー」を選択します。

以下のようにJavaの実行ファイルがダウンロードされますので、これを起動します。

データソースの追加

ERES Organizer起動後、「データレジストリマネージャー」をクリックします。

「追加」ボタンをクリックします。

Data Registryを任意の名前で作成し、”OK “をクリックします。

Data Registryを作成後、Databasesを選択し、ADDをクリックします。

コンフィギュレーション項目

バリュー

名称 任意
ドライバ・リスト その他
URL CDATAテストツールからの接続文字列(接続文字列の取得方法については、「CData Testing Too lによる接続のテスト」の項をご参照ください。)
ドライバ cdata.jdbc.googlebigquery.GoogleBigQueryDriver

 

正しく設定されている場合は、「接続のテスト」をクリックすると、次のメッセージが表示されます。

クエリを追加する

BigQueryへの接続を追加した後、BigQueryの接続の下にある「クエリ」を選択して
をクリックすると、”ADD “ボタンが表示されます。

希望の名前を入力し、「Enter SQL statement」でクエリを定義します。

SQLステートメントを入力します:

SELECT county_name, state_name, forecast_date, new_confirmed_ground_truth
FROM data
WHERE state_name = ‘New York’;

「データシートビュー」タブに移動することで、実際の結果を確認することができます。確認した後に”OK “を押します。

Part1はここまでで、Part2レポート作成、KPI(主要業績評価指標 )、アラート(Alert:警告)機能などを紹介します。

[] BigQueryデータからのチャートのみの可視化展開にはEspressChart、チャート+レポートの可視化展開にはEspressReport、ダッシュボードのみの可視化展開にはEspressDashoboardが最適です。

タグ: , , , , , ,

SOQLを使ったSalesforceデータのレポート作成

Salesforceは、世界を代表する CRM ベンダーです。そのためにレポーティング製品には、Salesforceのデータソースへの接続をサポートできることが重要です。

レポーティング製品Espressファミリーは、Salesforceのデータを可視化し、ビジネスインテリジェンスや業務報告アプリケーションに利用したいと考える既存のSalesforceユーザーのために、Salesforceデータをソースとしてサポートしています。Salesforceサーバとの接続は、Salesforce Partner WSDL(バージョン24.0)を使用したSOAPによって確立されます。ユーザは、SOQL(Salesforce Object Query Language)クエリにより、Salesforceサーバと通信します。このデータソースを使用するためには、ユーザ名とパスワードを持つ有効な Salesforce アカウントが必要です。また、Salesforce データソースを使用するユーザは、信頼できるネットワークから Salesforce アカウントにアクセスする必要があります。信頼あるIP リストに自分の IP アドレスを追加するには、以下の手順でコンピュータをアクティブにする必要があります。

SOQLクエリおよび信頼あるネットワークからの Salesforce ユーザーのアカウントの有効化に関する詳細についてはSalesforce サイトを参照してください。

Salesforce データソースを設定するには、データソースマネージャで SalesForce ノードを選択し、[Add (追加)] ボタンをクリックします。データソースの表示名、Salesforce アカウントのユーザ名およびパスワードを指定するように促すダイアログが表示されます。接続情報を指定したら、[接続のテスト] ボタンをクリックして、Salesforce アカウントへの接続をテストすることができます。これにより、提供された情報を使用して接続がテストされ、問題があれば報告されます。

SalesForce データソースのセットアップダイアログ

Salesforce のデータソースを追加すると、データソースマネージャウィンドウに新しいノードが表示されます。

新しい Salesforce クエリを追加するには、[Add(追加)] ボタンをクリックします。新しいダイアログが開き、クエリ名と SOQL クエリを指定するよう促されます。以下はその例です。

さらに興味深いのは、クエリパラメータを含むSOQLクエリです。パラメータはSOQL文の中で「: 」文字を使って指定されます。一般的に、パラメータはSOQLのSelect文のWHERE句に配置されます。以下はその例です。

SalesForce クエリダイアログのセットアップ

上記のクエリでは、実際にはパラメータに複数の値を指定することができます。もし、パラメータが1つの値しか取れないようにしたい場合は、以下のように書き換えることができます。

現在のEspressReportのバージョンでは、子から親への関係クエリのみがサポートされていることに注意してください。親から子へのクエリ(ネストしたSOQLクエリを使用)は使用できません。

このダイアログでは、クエリパラメータを初期化することもできます。

SOQLクエリパラメータを初期化するためには、「Initialize Parameters」ボタンをクリックします。パラメータの初期化ダイアログが表示され、パラメータのマッピングを指定することができます。

Initialize Parameters ダイアログ

このダイアログから、以下のオプションを指定することができます。

フィールドにマップ

パラメータ入力に使用される値を持つ Salesforce データソースのフィールドを指定できます。このオプションを選択すると、レポート/グラフのプレビューまたは実行時に表示されるパラメータプロンプトが変更されます。パラメータを Salesforce フィールドにマップする場合、明確な値のドロップダウン リストが表示され、そこからパラメータ値を選択することができます。マップしない場合は、特定のパラメータ値を入力する必要があります。

カスタム選択オプションを使用

すべての異なる列の値を持つドロップダウンメニューを持つのではなく、パラメータ値のカスタムリストを構築することができます。リストを設定するには、このオプションを選択し、[Setup Choices(選択項目の設定)]ボタンをクリックします。これにより、選択肢のリストを作成するための新しいダイアログが起動します。

残りのオプションは、基本的にデータベースクエリパラメータの場合と同じです。データベースクエリパラメータの初期化に関する詳細は、「1.3.2.2 – クエリパラメータの初期化」を参照してください。利用可能なすべてのパラメータのマッピングを指定したら、[OK] ボタンをクリックすると、Salesforce クエリのセットアップ ダイアログに戻ります。

[ Setup SalesForce Query] ダイアログから、[結果のプレビュー] ボタンを使用してクエリ結果をプレビューし、クエリからの出力を確認することもできます。パラメータ化されたクエリの場合、パラメータプロンプトダイアログが表示され、パラメータ値を指定するよう促されます。パラメータ値を指定したら、[OK]ボタンをクリックすると、クエリ結果のプレビューダイアログが表示されます。

パラメータプロンプト

クエリ結果プレビューダイアログ

このダイアログから、クエリの出力を確認することができます。[OK] ボタンをクリックすると、SalesForce クエリの設定ダイアログに戻ります。

クエリを指定したら、[OK] ボタンをクリックします。クエリはデータソースマネージャーの Salesforce データソースの下に新しいノードとして追加され、レポートやチャートを作成するために使用できるようになります。

まとめ

Salesforceアプリケーションは、クラウド上で遍在的存在です。QuadbaseのEspressファミリを使えば、強力で実用的なビジュアル分析や、ピクセル単位の完璧な業務レポートアプリケーションを、企業向けのSalesforceデータ上に簡単に構築することができます。

タグ: , , , , ,

ビッグデータと連携し、KPIアラート機能で簡単に重要な状況の行動判断に即活用! [EspressReport ES]

アラート(警告通知)は、企業にとって重要な特定のKPI(重要業績評価指標)を常に把握することができる優れた機能です。スマートフォンやタブレット端末の出現により、アラート機能はより適切で望ましいものとなっています。なぜなら、通知されることにより、重要な状況に対処するために即座に行動を起こすことができるからです。EspressReport ESのKPIアラート機能はビッグデータからのデータに対してKPIを実施し、アラームを導入することができます。KPIアラート機能とその他有効なEspressReport ESに含まれる機能を紹介します。またKPIアラート機能はEspressDashboardにも含まれます。
 

①フル・データコネクティビティ:各種データベース(JDBC)、SOAP、テキストファイル、Excelスプレッドシート、XMLソース、Javaオブジェクト/アレイ/EJBからデータを取り込むことができます。

 一元管理:EspressReport ESは、サーバーサイドのセントラルリポジトリを提供し、組織内での共同レポート開発、管理を可能にします。 Organizer のインターフェースにより、レポート開発者と管理者は、クエリー、レポート、チャートの作成、修正、保護することが可能です。

 セルフサービスダッシュボード: EspressReport ESは、シンプルなポイント&クリックのゼロクライアント・インターフェースで、洗練されたダッシュボードを簡単に作成することができます。

Alerts Dashboard

 アドホック・クエリーとレポート: シンクライアントのQuickDesignerインターフェースにより、アドホッククエリーの実行、アドホックレポートの作成と公開が容易に行えます。アドホックレポートに関するホワイトペーパーはこちら

 KPIアラート:ダッシュボードアラートとモニタリングアラートの2種類のアラートをサポートしています。アラートが発生すると、ユーザはダッシュボードでアラートのビジュアル・フィードバックを確認したり、Eメール通知を受け取ったりすることができます。

 インタラクティブ・マップ:レポートデータを視覚化するために、2種類のマップがサポートされています。 一つはGoogle maps APIを使用し、もう一つはSVG言語を使用します。 Googleマップが地理的な地図であるのに対し、SVGマップは地理的な地図であると同時に、間取り図や座席表などの空間データを表現することができます。 インタラクティブな機能として、ドリルダウンやツールチップを使ったレポートやチャートがあります。

Heart Disease MortalitySeating Plan

 豊富な出力オプション:アプレットでのレポート実行、HTML/DHTML、PDF、Excel(XLSとXLSX)、RTF、XML、テキスト、CSVファイルの生成をサポート。

 ⑧モバイルデバイスでの稼働:iPad、iPhone、Androidなどのモバイルデバイスから、チャート、レポート、マップ、ダッシュボードを外出先から閲覧することができます。

Smart Phone Usage

 

タグ: , , , , , , , , , , , , , , , , ,

IBM Cloud OpenShiftにEspressChartをデプロイする方法

IBM Cloud Red Hat OpenShift

Red Hat OpenShiftを使用すると、ユーザーはボタンをクリックするだけで、高可用性で完全に管理されたクラスタをデプロイすることができます。そこで、このブログでは、ユーザーの視点から、私たちの取り扱い製品であるEspressChartをIBM Cloud上のRed Hat OpenShiftにデプロイする方法について説明します。

Dockerは、あらゆる環境に即座にデプロイできるイメージに、必要なすべての依存関係をあらかじめパッケージ化したアプリケーションのイメージを作成することを可能にします。Kubernetesは、自己回復と自動スケーリング機能を提供することで、大規模なクラスタにわたるこれらのDockerイメージのデプロイと管理を強力に支援します。

OpenShiftは、基礎となるKubernetesとインフラ管理タスクを抽象化するツールのレイヤーを提供し、開発者がKubernetesベースのインフラ上でアプリケーションを容易にデプロイおよび管理できるようにすることで、これらの技術に基づいて構築されています。

EspressChartは、EspressManagerをTomcatのサーブレットとしてデプロイすることで、リモートで実行することができます。

 

EspressChartのデプロイ方法

デプロイ手順のスクリーンショットは、Redhat OpenShiftの無償サンドボックスである「RedHat OpenShift Dedicated」のものを使用しています。なお、IBM Cloud RedHat OpenShiftでのデプロイ手順も同じです。ここでは、プロジェクトとクラスタが既に作成されているものとします。

1) Red Hat OpenShift上でプロジェクトを選択し、「Developer」モードに切り替えます。

2) 追加をクリックし、「Container images」を選択します。

3) Image registry(quay.io/sales0/ec70)から、既存のImageをデプロイします。

4) ECをhttpで実行するため、「詳細オプション」の「高度なルーティングオプションを表示する」をクリックします。

5) “Secure Route “オプションのチェックを外し、”Create “をクリックします。


6) ユーザのPodが動作していることを確認し、「Routes」のリンクからTomcatが動作しているかテストします。

 

タグ: , , ,

EspressReport ES 機能紹介動画 x 4編

Espress Report ES】データソース・デモ


【Espress Report ES】基本レポート作成


【Espress Report ES】ダッシュボード・デモ

 

【Espress Report ES】アドバンスド・レポート機能

 

タグ: , ,

EspressChart API on Workstation

EspressChart API on Workstationは、Javaデスクトップ・チャート・アプリケーション開発に適したコンポーネントをJARファイル生成ツールにセットにしたものです。チャートやデータグリッド、ユーザーインタフェース用部品を数多く収録しており、幅広い用途のJavaアプリケーションに活用することができます。2D・3D合わせて30種類以上のグラフ形式に対応し、自由なカスタマイズや動的処理が可能です。Java標準APIだけでは対応しきれない高度なチャート機能を必要とするデスクトップアプリケーション開発を実現します。開発したJARファイルをユーザのPCにインストールしての利用が可能となります。

EspressChart API on Workstationには豊富なチャート種類が含まれます。例:折れ線、棒グラフ、積層、レーダーチャート、ガントチャート、HiLo等。 これにより開発者はJava標準のAPIでは実現が不可能な表現力豊かなユーザーインタフェースを短期間で開発でき、エンドユーザに提供することができます。

Espress APIについて:
専用のチャート /レポートデザイナで、チャートやレポートのテンプレートを作成するだけではなく、使いやすいアプリケーションプログラミングインターフェイス(API)で、アプリケーション やアプレット内でチャートやレポートを作成、カスタマイズできます。Espress製品は100% Pure Javaであるため、Java環境のみがインストールされていれば、ほとんど修正の必要なく、任意のプラットフォーム上で実行可能です。Espress APIについて詳しくはこちらへ 


■ EspressChart API on WorkstationはOEMまたは大量使用向け製品で単発の販売は致しません。また用途に応じたサポート体制も準備しております。

■ 詳細をご希望の方はは[EspressChart API on Workstation]と記入いただき、以下のフォームまでお問い合わせください。

総合お問合せフォーム

タグ: , ,