今回のインターネット・セミナーでは、DB2 Web Query for i を利用する際に必要となる「シノニム」について解説します。「シノニム」は、従来のIBM iユーザー(System i、iSeries、AS/400ユーザー)には、馴染みのない言葉・概念となるため、よくご質問いただく技術要素です。
このインターネット・セミナーでは、「シノニム」を基礎編と応用編に分けて説明します。基礎編では、「シノニム」がどのようなもので、何のために必要なのか、どうやって利用していくのか、を解説します。応用編では、更に一歩進めて、レポートの生産性向上に役立つ「シノニム」の活用方法を説明します。
DB2 Web Query for i をご存知ない方は
IBM DB2 Web Query for i(以下、DB2 Web Query)は、IBM iで稼働するデータ活用支援ツールです。オプション製品などを活用することでBusiness Intelligence(以下、BI)環境を実現します。2008年2月8日にV1R1M0、2009年3月21日にV1R1M1、2010年12月10日にV1R1M2がそれぞれ登場しています。
なお、DB2 Web Queryは、このインターネット・セミナーでも過去に2回取り上げていますので、まだお読みでない方は、はじめに以下のインターネット・セミナーをご覧ください。実際の稼働画面を録画したデモ動画も公開しています。
DB2 Web Queryを利用したIBM iでの情報活用のススメ
基礎編:シノニムを理解しよう
「シノニム」とは聞きなれない言葉なため、取っ掛かりにくいと感じるかも知れません。そのような方は、まずこの基礎編をお読みください。
1.シノニムって何ですか?
シノニムとは、DB2 Web Queryで利用するテーブルやビュー(物理ファイル・論理ファイル)などの情報がまとめられているファイルの名称です。一般的なBI用語では、「メタデータ」と呼ばれます。このメタデータとは、データそのものではなく、データを記述するデータという意味になります。「メタ○○」とは「○○を記述するための○○」と言う意味で使われています。言葉で理解することは難しいですね。
身近な例でご説明します。デジタルカメラで撮影した時に、撮影した画像には、撮影日時や、ファイルサイズ、また一部カメラではこの写真はカメラを縦にして撮ったのか、横にして撮ったのかといった情報が付けられています。この画像ではない付加情報が「メタデータ」です。この例であれば、「デジタルカメラで撮影した画像データについてのデータ」を意味します。このような情報があるため、ただの画像ファイルとしてだけではなく、日時順に並べてスライドショー表示したり、カメラを縦にして撮影した画像をいちいち回転させずに見たり、することが可能になっています。
また、DB2 Web Queryを利用する上で、この「シノニム」を避けて通れない理由があります。DB2 Web Queryでレポートを作成する時には、このシノニムが事前に作成されている必要があります。シノニムを作成していないファイルを、直接レポートが参照することはできません。そのため、下の図のように、DB2 Web Queryを利用する際には、必ずシノニムを経由していることになります。(後で説明をしていますが、レポート作成者は「シノニム」という言葉を理解していなくてもレポートを作成することは可能です。)

さて、もう少し詳しくシノニムを説明しましょう。まずはシノニムの中身を見てみましょう。特別な設定をしていなければ、シノニムはIFS上(/QIBM/UserData/webquery/ibi/apps/baseapp/xxxx)にオブジェクトとして保管されています。具体的には、下記の図のように、1つのシノニムは、同一名称の次の2つの拡張子ファイルから構成されています。
- マスターファイル(.mas):データの詳細情報(フィールド名、フィールド属性、データ・タイプ、桁数、カラムヘディング名称など)が含まれます。DSPFDコマンドやDSPFFDコマンドで参照できる情報に似ています
- アクセスファイル(.acx):テーブルに接続するための情報(テーブルが配置されているシステム名、ライブラリー名など)が含まれます。
実際のファイルの中身は、応用編で紹介するデベロッパー・ワークベンチ(下図の表示画面)もしくはWRKLNKコマンドで参照できます。

2.シノニムの効果
次に、なぜこのような「シノニム」が必要となるのか、シノニムがもたらす効果を説明します。シノニムには、主に下記の3つの効果があります。
- データの抽象化層を提供することで、物理的なテーブル構造に影響を与えずに、レポートが作りやすいように下ごしらえできる。【レポート生産性の向上】
- データ・モデル(JOINの組合せやフィールド名など)を知らないユーザーであっても、レポートの作成が可能となる。【レポート作成の簡素化、IT部門への依存度の軽減】
- 複数システムにまたがったデータを利用したレポート作成ができる。【複数システムでの情報活用】
1点目の効果として、既存のテーブル構造に影響を与えずに、レポートが作りやすい形に編集ができることがあげられます。例えば、一般ユーザーがわかりやすくするために、既存のフィールド名を直接変更してしまうと、現在利用しているRPGプログラムなどに影響が出てしまう恐れがあります。シノニムは、物理テーブルではなく、論理的な情報の集まりであるため、どれだけ編集しても、実際のテーブルには影響がありません。そのため、シノニム(メタデータ)という抽象化層を加工することで、既存のテーブル構造やテーブルを利用するプログラムには影響させずに、DB2 Web Queryでの利用のみ便利にする編集が可能となります。
2点目の効果として、テーブル構造を知らないユーザーにも、DB2 Web Queryで簡単にレポート作成ができることが挙げられます。例えば、データ構造を理解していないユーザーがレポートを作成しようとした際に、トランザクションファイル(明細ファイル)とマスターファイル(名称ファイル)をJOIN(結合)が必要になったとします。この時、どのフィールドとどのフィールドとを結合すべきか理解していないと、正しく結合することはできません。日頃からデータを管理しているIT部門の方であれば問題ないかもしれませんが、一般ユーザーにその理解を期待することは難しいでしょう。DB2 Web Queryの管理者が、事前にシノニムを作成し、JOINやフィールド名称を編集することで、レポート作成者は、レポート作成にのみ集中することが可能になります。
3点目の効果として、複数システムにまたがったデータを利用したレポート作成が挙げられます。下記の図のように、複数システムに点在しているデータを、1台(1区画)のDB2 Web Queryのレポートに集約させることが可能です。複数のデータを個別に見に行くのではなく、1つのDB2 Web Query に集約することで、今まで分断されていた情報が、一元的に活用できるようになります。この機能は、他システムのDB2 for iだけでなく、Microsoft SQLサーバーアダプターや、JDEアダプターも提供されています。なお、複数システムのDB2 for iデータの参照機能は、標準機能(無償)で提供されます。Microsoft SQLサーバーアダプターおよびJDEアダプターは有償オプションとなります。
メタデータ管理による複数システムの情報管理
他のIBM iやMicrosoft SQLサーバーなど複数システムのデータを、DB2 Web Queryから一元的に情報活用できます。

3.シノニム作成方法
シノニムの作成方法は下記のシノニム作成ガイドで紹介しています。この作業は既にDB2 Web Queryでレポートを作成しているお客様であれば、既に体験しています。(シノニムを作成した覚えがないのに、既にレポートを作成しているのであれば、DB2 Web Query管理者の方が事前にシノニムを作成してくれているはずです。)シノニムの作成は、ウィザード画面から実施できます。仮に1つのテーブルからシノニムを作成するのであれば、1分かからずに完了します。ライブラリー単位での作成や、ワイルドカードを利用したライブラリーやテーブルの検索も可能です。
なお、このシノニム作成の実施は原則としてDB2 Web Query管理者だけが覚えれば良いでしょう。複数ユーザーがシノニムを作成すると、同様のシノニムを複数作成してしまう恐れや、誤って既存のシノニムを上書きしてしまうリスクが発生します。DB2 Web Query管理者が複数存在する場合や、レポート作成者がシノニムを作成する場合は、ネーミングルールなどを事前に統一することを強く推奨します。例えば、異なるライブラリーに、同一名のテーブルなどが存在する場合がありますので、その際には「ライブラリー名_テーブル名」といったネーミングルールを定めてください。このような推奨事項は「DB2 Web Query for i はじめに」に記載しています。
シノニム作成ガイド(「(2)シノニム作成」に記載)
IBM DB2 Web Query for i :マニュアル、導入手順書、簡易操作資料
Redbook: DB2 Web Query for i はじめに(47ページ「3.6.1 メタデータ」に記載)
応用編:シノニムを使いこなしてレポート生産性を向上!
前述の「シノニムの効果」に記載したとおり、シノニムを編集することで、レポート作成作業の簡素化およびレポートの生産性の向上が実現します。
なお、シノニムの編集には、DB2 Web Query のオプション製品:デベロッパー・ワークベンチの一機能である「シノニム・エディター」が必要になります。このシノニム・エディターがない場合には、毎回レポートを作成する際に、レポート作成画面(インフォアシストやレポートアシスタントなど)上で、その都度編集が必要になります。つまり、シノニム・エディターで編集し、その変更したシノニムを保存しておくことで、レポート作成時にその都度編集する手間がなくなり、レポート生産性が向上します。
【前提条件】
- 5733-QU2 オプション3 DB2 Web Query Developer Workbench
デベロッパー・ワークベンチが有するシノニム・エディター機能を利用します。
【シノニム編集でその後の作業が簡素化される例】
- データベース結合(JOIN)の定義
例)販売売上のトランザクション表に商品マスター表を結合(JOIN)して商品名を表示させます。レポート作成者は、毎回レポート作成時にJoinの作業をすることなく、レポート作成が可能です。事前にJOIN作業を済ませることで、作業の効率およびJoinのわからない一般ユーザーの方のIT部門への依存度の軽減が期待できます。 - 一時項目(仮想フィールド)の作成
例)「定価」フィールドを1.05倍した「税込価格」フィールドを作成します。レポート作成時に毎回一時項目を作成する必要がないため、レポートの作成速度が向上します。また、「円」単位の売上金額を1000で除算し「千円」単位に変更した例、粗利益から売上を除算し「粗利率」を算出している例は下記の図を参照ください。 - フィールドの標準化
例)1000000 → 1,000,000(3桁区切りカンマ)やフィールド属性の変更(\マークの付加など)が可能です。事前にシノニム上でフィールドを標準化させることで、見やすいレポートを作成できます。下記の図での「C=挿入する」が3桁区切りカンマに相当します。 - フィールド名称の変更
例)レポートに表示させるフィールド名称(カラムヘディングに相当)をよく利用する名称に変更できます。例えば前述の一時項目(仮想フィールド)の作成の例に挙げたように、「売上金額(円)」のフィールド名称を「売上金額(千円)」に変更することで、レポートを参照するユーザーに正確に情報を提供できます。下記の図の「TITLE」がフィールド名称に相当します。 - フィールドタイプの変更
例)用意された関数を利用して、数値型を文字列に型変換することなどが可能です。 - 日付分解
例)日付フィールドを「20110930」のように8桁として持っていた場合、日付分解機能を利用できます。 日付分解することで、新たに「年」「四半期」「月」「日」のフィールドを新規作成でき、それぞれのフィールドに該当の数字が格納されます。この例では、年フィールドに2011、四半期フィールドに3Q、月フィールドに9、日フィールドに30が格納されます。どのフィールドを作成するかは任意に設定できます。なお当機能により「四半期」フィールドを作成した場合は、1月から3月が1Qと認識され、変更することはできません。 - 日付フィールドの変換および標準化
例)11-22-2010 → 2010/11/22 のようにレポートに表示させる日付フィールドを変更できます。 - ビジネス・ビューの作成
例)1つのシノニムに数十のフィールドが格納されている場合、必要とするフィールドを見つけ出すことに時間がかかります。そのような時には、フィールドのカテゴリー分け機能が便利です。例えば時系列フォルダ(年/月/日)や組織フォルダ(部/課/チーム)などを事前にカテゴリー分けすることで、レポート作成者は必要なフィールドを迅速に見つけることができます。
【設定例 1:金額表示を千円単位に切替】

一時項目「単価」
- 金額 ÷ 数量 × 1000
- 表示単位「千円」に切替
- 3桁カンマを挿入
編集方法は、「Redbook: DB2 Web Query for i はじめに」(351ページ「デベロッパー・ワークベンチの追加機能」に記載)をご参照ください。
DB2 Web Query for i はじめに(13.88MB)
【設定例 2:粗利率フィールドの作成】

一時項目「粗利率」
- 粗利率 ÷ 金額 × 100
- 小数点第1位まで表示
編集方法は、「Redbook: DB2 Web Query for i はじめに」(351ページ「デベロッパー・ワークベンチの追加機能」に記載)をご参照ください。
参考情報
DB2 Web Query ポータルサイト
DB2 Web Queryのご紹介ビデオや各種資料、導入手順書やFAQ、研修情報など、数多くの情報がまとまったポータルサイトです。DB2 Web Queryをこれから使用する方も、既にご利用中の方も、ぜひ一度ご覧ください。
IBM DB2 Web Query for i ポータルサイト
DB2 Web Query デモビデオ
実際に操作している様子を動画にて公開しています。現在は基本機能編とレポート作成編の2つが公開されています。ログイン画面や、さまざまなレポートの実行の様子、レポート作成の操作感をご覧ください。
第1弾:IBM DB2 Web Query デモビデオ(基本機能編) [約5分]
第2弾:IBM DB2 Web Query デモビデオ(レポート作成編) [約7分]
第3弾:IBM DB2 Web Query デモビデオ(レポート作成:インフォアシスト編) [約6分]
DB2 Web Query Redbook 日本語版 第2版
「DB2 Web Query for i はじめに」はチュートリアル形式の無料の自習書です。DB2 Web Queryの主要な機能がこの一冊に詰まっていますので、ぜひご一読ください。今回取り上げたシノニム(メタデータ)の説明や作成方法も、このRedbookに記載されています。3.6.1メタデータを参照ください。
IBM、IBMロゴ、ibm.com、AS/400、DB2、Domino、iSeriesおよびSystem iは、世界の多くの国で登録されたInternational Business Machines Corporationの商標です。他の製品名およびサービス名等は、それぞれIBMまたは各社の商標である場合があります。現時点でのIBMの商標リストについては、www.ibm.com/legal/copytrade.shtml(US)をご覧ください。