IBM i インターネットセミナー © 2017 IBM Corporation DataMigrator for i

IBMi インターネットセミナー
DataMigratorfori で Excel ファイルを楽々インポート
【はじめに】
今回のインターネット・セミナーでは、Excel ファイルを IBMi のデータベースにインポートす
る⽅法をご紹介します。使⽤するのは DataMigratorfori です。DataMigratorfori は IBMDB2Web
Queryfori のオプション機能です。DataMigratorfori は ETL ツールとしての機能を提供しますが、
その⼀つとして広く利⽤されている Microsoft 社の Excel ファイルをソースとしてインポートが
できます。Excel ファイルを DB2fori のテーブルに変換する操作は GUI ツールで簡単に⾏えます。
【事前準備】
ご紹介する⽅法は、以下の環境を前提条件としています。
l
IBMi7.1 以上
l
DB2WebQueryfori2.2StandardEdition もしくは ExpressEdition
l
DB2WebQueryfori の DataMigratorfori オプション
l
DB2WebQueryfori の DeveloperWorkbench ライセンス
l
最新 PTF 適⽤を推奨
DataMigrator for i をセットアップして、Windows PC 上で DataMigrator for i(以降 DataMigrator)
を⽴ち上げます。(セットアップ⼿順は、巻末の参考資料をご参照ください)
図1
DataMigrator 画⾯例(データ管理コンソール)
©2017IBMCorporation
IBMi インターネットセミナー
次に Excel ファイルを⽤意します。DB2fori にインポートするデータですので、以下の条件
で Excel ファイルを⽤意ください。
l
1 ⾏⽬がヘッダー⾏、2 ⾏⽬以降がデータ⾏
l
ヘッダー(カラム名)は英数字
l
ファイル形式は.xlsx もしくは.xls
l
ファイル名は英数字推奨
今回のご紹介では、Navigatorfori で CPU 使⽤率のパフォーマンスデータをエクスポートした
ファイルを使⽤します。10 カラム、1432 レコードのデータです。上記条件に合うように Excel
上で加⼯しています。なおファイル名は⽇本語でもインポートには問題ありませんが、インポ
ート作業時にファイル名が⽂字化けして表⽰されるため、複数ファイルをアップロードした際
に区別が付きにくいため、英数字のファイル名でのアップロードが推奨です。
図2
サンプルデータ(10 カラム、1432 レコード)
【Excel ファイルを IFS にアップロード】
DB2fori にインポートする Excel ファイルは、IBMi の IFS(IntegratedFileSystem)にアップロ
ードしてから DataMigrator でインポートします。FTP 等を使⽤して、任意の IFS ディレクトリー
©2017IBMCorporation
IBMi インターネットセミナー
に先ほどの Excel ファイルをアップロードします。
当資料では、(root)/demo/excelimport/ 配下にアップロードしました。
図3
Excel ファイルを IFS 上に配置
【DataMigrator で Excel ファイルのシノニムを作成】
DataMigrator のブラウザからシノニムを作成するアプリケーションフォルダを選択して、右
クリックします。右クリックメニューの中から、「新規」→「シノニム(作成または更新)」を
選択します。(図 4)
©2017IBMCorporation
IBMi インターネットセミナー
図4
シノニムの作成を開始
アダプタの中から「Excel(直接取得)」を選択して OK で進みます。(図 5)
図5
Excel(直接取得)を選択
シノニムデータファイルの選択画⾯で、アップロードした Excel ファイル(Excel ブック)を指
定して次へ進みます。ディレクトリー名だけを⼊⼒して右側の
アイコンからファイルを探す
こともできます。
©2017IBMCorporation
IBMi インターネットセミナー
図6
Excel ブックを指定
選択した Excel ブックが表⽰されますので、チェックを⼊れて指定します。シノニム作成の
推奨に従って接頭語(ここでは「excel_」)をつけて次に進んでいます。
図7
シノニム候補を選択
©2017IBMCorporation
IBMi インターネットセミナー
図 8 のような画⾯が出ますので、シノニム作成を確認します。
図8
シノニム作成完了を確認
作成されたシノニムの詳細は DataMigrator 上で確認することができます。(図 9)
Excel ファイルをインポートすると、⽇付や時間といった元のデータ形式に沿ったフォーマッ
トが適⽤されていることがわかります。また、インポートしたカラムからデータ活⽤に有⽤な
⼀時項⽬も⾃動的に作成されています。(⽇付から年、⽉、⽇などの項⽬を⾃動⽣成)
データフォーマット
⼀時項⽬
図9
シノニムの詳細を確認
©2017IBMCorporation
IBMi インターネットセミナー
【DB2fori テーブルへの変換フローを作成】
アプリケーションフォルダを右クリックして、「新規」→「フロー」を選択します。(図 10)
図 10
フローを新規作成
図 11 のように、「カラムの選択」の左側に先ほど作成したシノニム(ソース)を配置し、右
側に新規のターゲットテーブルを作成します。(図 11)
シノニム(ソース)の配置はブラウザのツリーからドラッグ&ドロップで⾏えます。
ターゲットの追加は「カラムの選択」より右のエリアで右クリックし、「ターゲットの追
加」→「新規」で⾏えます。
ドラッグ&ドロップ
図 11
フローの作成
「カラムの選択」をダブルクリックすると図 12 の画⾯が表⽰されます。利⽤可能カラムから
全てを選択(ctrl+A)して右⽮印(
)で全てのデータを ETL する設定とします。もちろん、不
要なカラムなどは除外するなど DB2fori のテーブル設計をカスタマイズもできます。
図 12
カラムの選択
©2017IBMCorporation
IBMi インターネットセミナー
最後にターゲットテーブルのシノニム名、テーブル名を設定します。ターゲットアイコンを右
クリックしてプロパティを開いて編集します。(図 13)
シノニム名:demo/cpu_utilization テーブル名:demo/cpu_util
※シノニム名の”demo”は WebQuery 上のアプリケーションフォルダ(IFS 上のディレクトリー)
を⽰しており、テーブル名の”demo”は QSYS のライブラリーを⽰しています。
図 13
ターゲットテーブルのプロパティ編集
【DB2fori テーブルへの変換を実⾏】
フローメニューを開き、作成したフローを実⾏します。(図 14)
図 14
フローの実⾏
©2017IBMCorporation
IBMi インターネットセミナー
環境に依存しますが、今回のテストでは数秒で DB2 for i のテーブルが作成されました。作成さ
れたテーブルは 5250 画⾯で確認すると PF として認識されています。また、全レコードが Excel
から DB2fori にインポートされていることも確認できます。
図 15
WRKOBJ と RUNQRY の実⾏画⾯
【補⾜】
ここまでのサンプルでは⽇本語のデータを使⽤していませんでしたが、カラム名が英数字で
あれば、レコード内容に関しては⽇本語の Excel ファイルでも同様に DB2fori テーブルにイン
©2017IBMCorporation
IBMi インターネットセミナー
ポートができます。図 16 にその例を⽰します。もともと IBMi 上にあるサンプルデータの
QEOL/TOKMSP(得意先マスター)をデータ転送で PC に Excel ファイルとして⼀旦ダウンロード
したものを、先ほどの⼿順で「Excel(直接接続)」のシノニムとして作成し、データのサンプ
リングをしたところ、全⾓⽇本語、半⾓カナ含めて正しく表⽰されることが確認できます。
図 16 ⽇本語データのシノニム作成
【まとめ】
今回は DataMigratorfori で、Excel ファイルを DB2fori のテーブルに変換する⽅法をご紹介し
ました。これまでも DDS や CPYFRMIMPF コマンドなどを組み合わせることで Excel ファイルを
IBMi に取り込むことはできましたが、DataMigratorfori を利⽤することが、より簡単にスピー
ディーに Excel データの取り込みができるようになりました。
データ活⽤が活発化する中、基幹システムのデータと周辺システム(外部)のデータを組み
合わせて⼤量のデータを多⾓的に分析することがビジネスに価値を⽣む知⾒を得るために重要
と⾔われています。多くの場合、データベースと並んで Excel 形式でデータを持たれているか
と思います。DataMigratorfori では、それらの経営資源とも⾔える Excel データを簡単に IBMi
のデータベース形式に変換できます。また、ベースとなっている DB2WebQueryfori と共通の
シノニム管理となっており、取り込んだデータはすぐに DB2WebQueryfori で分析・可視化を
進めることができます。
IBMi であれば基幹業務の安定稼働だけでなく、DataMigratorfori を活⽤いただくことで、周
辺データまで含めたデータ活⽤も⼀台で実現できます。ビッグデータ時代もオールイン・ワン
で業務を⽀えるプラットフォームである IBMi をご活⽤いただければ幸いです。
©2017IBMCorporation
IBMi インターネットセミナー
【参考情報】
IBMPowerSystemsJPNWiki:IBMi 技術情報 「DB2WebQueryfori 各種資料/マニュアル」
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/W8214c473fef0_444f_
886a_cd015ca34c89/page/DB2%20Web%20Query%20for%20i
本資料は、正式なレビューを受けたものではなく、資料作成者の独⾃の⾒解を反映したもので
す。情報提供の⽬的のみで提供されています。本資料に含まれている情報については、完全性
と正確性を期するよう努⼒しましたが、「現状のまま」提供され、明⽰または暗⽰にかかわら
ずいかなる保証も伴わないものとします。本資料またはその他の資料の使⽤によって、あるい
はその他の関連によって、いかなる損害が⽣じた場合も、IBM は責任を負わないものとしま
す。 本資料で⾔及している製品リリース⽇付や製品機能は、市場機会またはその他の要因に基づい
て IBM 独⾃の決定権をもっていつでも変更できるものとし、いかなる⽅法においても将来の製
品または機能が使⽤可能になると確約することを意図したものではありません。
(2017 年 2 ⽉ 13 ⽇公開)
©2017IBMCorporation