各製品の資料を入手。
詳細はこちら →SpagoBI でDB2 に連携
SpagoBI Studio でリアルタイムDB2 にフィーチャーしたレポートを作成します。ホストのDB2 はSpagoBI サーバーを報告します。
最終更新日:2022-06-13
この記事で実現できるDB2 連携のシナリオ
こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。
CData JDBC Driver for DB2 はJDBC 標準をサポートするビジネスインテリジェンスおよびデータマイニングツールからリアルタイムDB2 に接続することを可能にします。この記事では、DB2 をSpagoBI Studio のレポートに統合し、SpagoBI サーバーでホストする方法を説明します。
SpagoBI サーバーのJDBC ドライバーをデプロイ
以下のステップに従ってSpagoBI サーバーでJDBC data source for DB2 を作成します。
- ドライバーJAR を%CATALINA_BASE%/lib にコピーします。これらのファイルは、インストールディレクトリのlib サブフォルダにあります。
DB2 ドライバーリソースをコンテクストに追加します。以下のリソース定義をserver.xml の[GlobalNamingResources]要素に追加できます。
<Resource name="jdbc/db2" auth="Container" type="javax.sql.DataSource" driverclassname="cdata.jdbc.db2.DB2Driver" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" maxactive="20" maxidle="10" maxwait="-1"/>
- 以下のリソースリンクを追加し、Web アプリケーションへのアクセスを許可します。この記事では、SpagoBI のMETA-INF\context.xml に次の行を追加します。
<ResourceLink global="jdbc/db2" name="jdbc/db2" type="javax.sql.DataSource"/>
- サーバーを再起動します。
SpagoBI サーバーのリソースにドライバーを追加した後、データソースを追加します。SpagoBIで[Resources]->[Data Source]->[Add]と進み、以下の情報を入力します。
- Label:ドライバーに独特の識別子を入力します。
- Description:ドライバーにディスクリプションを入力します。
- Dialect:デフォルトの方言を選択します。
- Read Only:読み取り専用オプションを選択します。このオプションは、データソースがエンドユーザーによって作成された、データセットを保存するためのデフォルトデータベースであるかどうかを決定します。
- Type:[JDBC]を選択します。
- URL:
- 必要な接続文字列プロパティを使用してJDBC URLを入力します。
DB2 に接続するには以下のプロパティを設定します。
- Server: DB2 を実行するサーバー名。
- Port: DB2 サーバーのポート。
- Database: DB2 データベース名。
接続の準備ができたら、認証スキームを選択し、以下で説明するように適切なプロパティを設定します。
本製品 は、DB2 への認証に4つの異なるスキームをサポートします。DB2 ユーザー資格情報(デフォルト)、暗号化されたユーザー資格情報、IBM Identity and Access Management(IAM)認証、および Kerberos です。
DB2 ユーザー資格情報
ユーザー資格情報を使用して認証するには、次のプロパティを設定します。- AuthScheme:USRIDPWD。
- User:データベースへのアクセス権を持つユーザーのユーザー名。
- Password:データベースへのアクセス権を持つユーザーのパスワード。
暗号化されたユーザー資格情報
サーバーがセキュア認証に対応しており、暗号化されたユーザー資格情報を使用して認証を行いたい場合は、このプロパティを設定します。- AuthScheme:EUSRIDPWD
IAM、Kerberos で認証したい場合は、ヘルプドキュメントの「はじめに」セクションを参照してください。
パスワード方式によるSSH 接続
パスワード方式によるSSH接続時に必要なプロパティ一覧を以下に示します。
- User: DB2 のユーザ
- Password: DB2 のパスワード
- Database: DB2 の接続先データベース
- Server: DB2 のサーバー
- Port: DB2 のポート
- UserSSH: "true"
- SSHAuthMode: "Password"
- SSHPort: SSH のポート
- SSHServer: SSH サーバー
- SSHUser: SSH ユーザー
- SSHPassword: SSH パスワード
接続文字列形式では以下のようになります。
Server=10.0.1.2;Port=50000;User=admin;Password=admin;Database=testUseSSH=true;SSHAuthMode=Password;SSHPort=22;SSHServer=ssh-server;SSHUser=root;SSHPassword=sshpasswd;
公開鍵認証方式方式によるSSH 接続
公開鍵認証によるSSH接続時に必要なプロパティ一覧を以下に示します。
- User: DB2 のユーザ
- Password: DB2 のパスワード
- Database: DB2 の接続先データベース
- Server: DB2 のサーバー
- Port: DB2 のポート
- UserSSH: "true"
- SSHAuthMode: "Public_Key"
- SSHClientCertType: キーストアの種類
- SSHPort: SSH のポート
- SSHServer: SSH サーバー
- SSHUser: SSH ユーザー
- SSHClientCert: 秘密鍵ファイルのパス
接続文字列形式では以下のようになります。
Server=10.0.1.2;Port=50000;User=admin;Password=admin;Database=test;UseSSH=true;SSHAuthMode=Public_Key;SSHClientCertType=PUBLIC_KEY_FILE;SSHPort=22;SSHServer=ssh-server;SSHUser=root;SSHClientCert=C:\Keys\key.pem;
ビルトイン接続文字列デザイナ
JDBC URL の構成については、DB2 JDBC Driver に組み込まれている接続文字列デザイナを使用してください。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。
java -jar cdata.jdbc.db2.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
以下は一般的なJDBC URL です。
jdbc:db2:Server=10.0.1.2;Port=50000;User=admin;Password=admin;Database=test;
- Driver:ドライバーのクラス名にcdata.jdbc.db2.DB2Driver を入力します。

SpagoBI Studio でレポートを作成
以下のステップに従い、SpagoBI StudioでDB2 に基づいたレポートを作成します。SQL クエリの結果をチャートに挿入するデータセットを作成します。次のセクションでは、このレポートをSpagoBI サーバーでホストします。
初めに、SpagoBI Studio のレポートからDB2 に接続してください。
- SpagoBI Studio で、[File]->[New]->[Project]とクリックしていき、[Business Intelligence and Reporting Tools]フォルダで[Report Project]を選択します。
- [File]->[New]->[Report]と進み、[Blank Report]を選択します。
- [Data Explorer]ビューで[Data Sources]を右クリックし、[New Data Source]をクリックします。
- [JDBC Data Source]を選択し、データソース名を入力します。
- [Manage Drivers]をクリックし、[Add]をクリックしてドライバーJAR(cdata.jdbc.db2.jar) を追加します。
- ドライバーJAR は、インストールディレクトリのlib サブフォルダにあります。
- [Driver Class]メニューでドライバークラス(cdata.jdbc.db2.DB2Driver)を選択します。
- [Database URL]ボックスに、[JDBC URL]を入力します。以下は一般的な接続文字列です。
jdbc:db2:Server=10.0.1.2;Port=50000;User=admin;Password=admin;Database=test;
必要な接続プロパティを取得するためのガイドについては、ドライバーヘルプの[Getting Started]チャプターを見てください。
DB2 に接続した後、SQL クエリの結果を含むデータセットを作成します。
- [DataSet]フォルダを右クリックし、[New Data Set]をクリックします。JDBC data source for DB2 を選択し、データセットの名称を入力します。
- SQL クエリを構築します。ここでは、このクエリを使用してダッシュボードにチャートを追加します。例:
SELECT Orders.Freight, Customers.ContactName FROM Customers INNER JOIN Orders ON Customers.CustomerId=Orders.CustomerId
データセットを使用して、レポートオブジェクトにデータを入力できます。以下のステップに従って、チャートを作成します。
- [Palette]ビューで、チャートをキャンバスにドラッグします。
- [Select Chart Type]タブで棒グラフを選択します。
- [Select Data]タブで[Use Data From]オプションをクリックし、メニューからDB2 のデータセットを選択します。
- OrderName をテーブルからx 軸の系列にドラッグします。
- Freight をテーブルからy 軸の系列にドラッグします。
SpagoBI サーバーに関するホストDB2 レポート
以下のステップに従って、SpagoBI サーバーでリアルタイムDB2 に基づいてドキュメントをホストできます。前のセクションで作成したレポートをテンプレートとして使用します。レポートユーザーがリアルタイムデータにアクセスできるようにするには、サーバー上のDB2 JDBC データソースに置き換えられるプレースホルダパラメータを作成します。
- 未実行の場合、SpagoBI Studio で[Report Design]パースペクティブで開きます。
- [Data Explorer]ビューで[Report Parameters]フォルダを右クリックし、[New Parameter]をクリックします。url パラメータを追加し、それに空の値を割り当てます。このパラメータはSpagoBI サーバー上のJDBC データソースのプレースホルダです。
- DB2 のデータソースを右クリックし、[Edit]をクリックします。
-
[Property Binding]ノードで、JDBC Driver のURL バインディングプロパティurl パラメータに設定します。プロパティのボックスをクリックします。[Category]セクションで[Report Parameters]を選択します。[Subcategory]セクションで[All]を選択し、パラメータをダブルクリックします。
JavaScript構文に以下のように入力することもできます。
params["url"].value
続いて、SpagoBI サーバーでレポート用の新しいドキュメントを作成します。
- SpagoBI サーバーで、[Documents Development]->[Create Document]->[Generic Document]と進みます。[Document Details]ページが表示されます。
- 以下の情報を入力し、ドキュメントを作成します。
- Label:ドキュメントに独自の識別子を入力します。
- Name:ドキュメントのわかりやすい名前を入力します。
- Type:メニューから[Report]を選択します。
- Engine:[BIRT Report Engine]を選択します。
- Data Source:SpagoBI サーバーのCreate a JDBC Data Source for DB2 で作成したDB2 Data Source を選択します。
- [Show Document Templates]セクションで、ドキュメントを格納したいフォルダを選択します。
[Template]セクションで、[Choose File]をクリックします。レポートプロジェクトを含むフォルダに移動します。.rptdesign ファイルを選択します。
Noteプロジェクトへのパスは、プロジェクトプロパティで確認できます。
- [Save]ボタンをクリックします。

サーバーでレポートを実行すると、プレースホルダurl パラメータがサーバーで定義されたJDBC URL に置き換えられます。
