- 業務システムとのデータ連携
地方公共団体情報システム標準化でなぜ今、データ連携基盤が求められているのか?!
地方公共団体情報システム標準化におけるデータ連携についてご紹介します。
|
こんにちは!アシストでデータ連携製品(DataSpider/DMExpress)を担当している市毛です。
私はETL/EAIツールのフィールド技術担当として、お客様が製品を最大限に活用できるように
ツール購入後の初期支援(製品トレーニング、スキルトランスファー支援、標準化支援等)を日々行っております。
そんな日々のお客様支援を通じて得られた「データ連携処理構築におけるベストプラクティス」を
私なりにまとめたものを連載でお届けしたいと思います。
1) データ連携処理開発にETL/EAIツールを利用するメリット
2) データ連携処理開発の躓きやすいポイント
3) データ連携処理開発プロセスのベストプラクティス(←今回はココ)
今回は、本連載の肝となる
「データ連携処理開発プロセスのベストプラクティス」
について考えていきたいと思います。
前回の記事では、データ連携処理開発の躓きやすいポイント について
データ連携ツール適用における問題と解決策の概要をご紹介しました。
【データ連携ツール適用時の問題に対する解決策5つ】
1.クリティカルな要件に対し可能な限り実環境で評価版検証する
2.データ連携の標準的なパターン/適用範囲を明確化する
3.ツールの特性を踏まえた標準化ルールを策定する
4.ツールでのロジック共通化の適用範囲/制限事項を押さえる
5.ツールを利用した構築Tips集を用意する
この解決策の具体的な方法を一つ一つひも解いていきたいと思います。
|
1つ目は「クリティカルな要件に対し、可能な限り実環境で評価版検証する」です。
クリティカルな要件は、大きく3つに分類することができます。
データ連携元/データ連携先の中核を担うのが接続先です。
各種のマスタ/トランザクション情報を保持し、周辺システムに対する
マスタ連携/トランザクション連携を行う必要がある「基幹システム」が主に該当します。
ERPパッケージのSAP、顧客管理/SFAのクラウドサービスであるSalesforceなどが
例として挙げられます。
|
|
データ連携処理で必要となる主要な要素を分解すると次のようになります。
・データ抽出/データ出力
・データ変換
・集計/結合/ソート
・ファイル操作(ファイル移動/コピー/削除、フォルダ作成等)
これに対して、データ連携ツールの特性を踏まえて、
・全面的に利用する要素
・条件を満たす場合に利用する要素
・データ連携ツールの特性に合わないため利用しない要素
というように利用する範囲を明確化しておくことで、ツールの特性に合わない利用方法を
抑止することが期待できます。
アシストで取り扱っているETL/EAIツール「DMExpress」「DataSpider」をもとに
各ツールの適用範囲例をまとめてみました。
データ連携要件やプロジェクト特性によって適用範囲は変わってくるので
あくまでの一つの例として参考にしていただければと思います。
|
もう一つは、データ連携の標準的な処理パターンを明確化することです。
処理パターンの要素は下記のとおりです。
・処理の起動方法
ツールの自動起動機能を利用 or ジョブ管理ツールからキック
・連携元からのデータ抽出方式
ファイル or DBテーブル or DBワークテーブル
・連携先へのデータ出力方式
ファイル or DBテーブル or DBワークテーブル
アシストで取り扱っているETL/EAIツール「DMExpress」「DataSpider」をもとに、各ツールの処理パターン例をまとめてみました。こちらも、データ連携要件やプロジェクト特性によって処理パターンは変わってくるので、あくまでの一つの例として参考にしていただければと思います。
|
|
3つ目は「ツールの特性を踏まえた標準化ルールを策定する」です。
「開発標準化ルール」の主なものを挙げてみます。
・命名規約
・フォルダ構成
・エラーハンドリング
・ログ管理
・トランザクション管理
データ連携ツールを用いる場合でも、
上記のような基本的な開発標準化ルールは定めておくべきですが
これに加えてツールの特性を踏まえた標準化ルールを用意しておく必要があります。
それは、「処理フロー作成」や「データマッピング」といった
GUIを使用した処理フロー/マッピングの開発スタイルに沿ったルールです。
たとえば、処理フロー作成では、
・アイコンの配置方法
・配置するアイコン数
・アイコンの表示方法
・コメントの付与
といった点が挙げられます。
アシストで取り扱っているETL/EAIツール「DMExpress」「DataSpider」の例を
まとめてみたので、こちらも参考にしていただければと思います。
|
また、フロー作成ルールには、処理性能/リソースを考慮した設定を含めておくことも重要です。
この観点が抜け落ちていると
・後工程での性能テスト/負荷テストで処理性能が出ない
・リソースを使いすぎてメモリエラーが頻発する
ということが発覚する可能性があります。
そうなってしまうと、パフォーマンスチューニング等の余計な開発工数が発生するかもしれません。
処理性能/リソースを考慮した設定については、各データ連携ツールの機能に大きく依存するので、それらの機能は必須で押さえておくべきポイントだと思います。
アシストで取り扱っているETL/EAIツール「DMExpress」「DataSpider」の例をまとめてみたので、こちらも参考にしていただければと思います。
|
|
4つ目は「ツールでのロジック共通化の適用範囲/制限事項を押さえる」です。
「共通化」は、同じものを作らなくて済むことでの開発工数削減や、修正箇所を1か所にすることができる保守性の向上につながるので、システム開発を行う上では当然のように検討する内容です。
そして、データ連携ツールを用いてデータ連携処理開発を行う際にも「共通化」は
必要な検討課題となります。
ここでは、まず、データ連携処理開発の共通化要素を考えてみたいと思います。
データ連携処理の基本パターンは
入力 → 加工/変換 → 出力
となります。
この中での共通化要素は下記のとおりです。
・入力/出力のファイル/DBテーブル等のレコードレイアウト(列一覧の定義)
・入力/出力のデータソース接続定義
(DBであればホスト/ポート/データベース/ユーザ/パスワード)
・加工/変換の処理ロジック (加工/変換関数)
・入力→加工/変換→出力の処理フローそのもの
イメージでまとめると下記のようになります。
|
これらの共通化要素に対して、
・データ連携ツールの機能が対応しているのか
・対応しているのであれば、どのように実現できるのか
という点を押さえておきます。
アシストで取り扱っているETL/EAIツール「DMExpress」「DataSpider」の例を
まとめてみたので、こちらも参考にしていただければと思います。
|
|
5つ目は「ツールを利用した構築TIPS集を用意する」です。
データ連携処理開発を可能な限り効率化して生産性高く行っていくためには、
データ連携ツールの通常の機能「+アルファ」の便利な機能を理解して
その部分を開発メンバーに共有化することが大事です。
ここでは、アシストで取り扱っているETL/EAIツール「DMExpress」「DataSpider」の
機能を交えて、TIPSとして共通利用できそうなものをピックアップしてご紹介いたします。
■ファイルレイアウトインポート
データ連携ツールで入出力ファイルを定義する際には
ファイルの入出力レイアウト(列の一覧と各列のデータ形式)を手動で設定します。
ただし、入出力ファイルの列数が多い場合には手動で設定するのは大変なため
レイアウト定義ファイルを用意して、レイアウトをインポートする機能が
付いているかと思います。
このレイアウトインポート機能をベースに一歩進めて考えると、
Excel等で作成するファイルレイアウト定義書から、インポートするための
レイアウト定義ファイルを自動生成するようなExcelマクロやデータ連携ツールでの
スクリプトをあらかじめ用意しておくことで、
レイアウト定義ファイル作成の作業工数をゼロにすることが可能です。
|
■テストの効率化
データ連携処理開発に限らないことですが、システム構築において
大きな工数を占める一つがテスト工程です。
このテスト工程をデータ連携ツールの機能を用いることで
省力化/効率化できる可能性があります。
たとえば、高速ETLツール「DMExpress」は大量データの集計/結合処理に
力を発揮するので、システムマイグレーション時の重要なテスト観点である
現新比較テスト(現行システムと新システムの処理結果が同じであることを比較するテスト)
の結果確認用に、DMExpressで「現」処理結果データと「新」処理結果データを結合する
処理を作成して、大量データの比較でも短時間でテスト結果を得ることが可能です。
また、DataSpiderの例としては、DataSpiderにはテスト自動化を支援する機能が
付いているため
テストデータ読み取り→テスト対象スクリプト実行→結果比較→テスト結果出力
という流れのテスト用のスクリプトを用意して定期的にトリガーで実行できるように
しておくことで、仕様変更等による再テスト/リグレッションテストを自動化することが
可能です。
|
今回の連載の内容をまとめると、
・データ連携ツールを利用することで工数削減は見込める
・データ連携ツールを利用する際には3つの躓きやすいポイントに注意する必要がある。
1.ツールの検証が不十分
2.ツールの適用範囲があいまい
3.ツールの標準化が浸透していない
・躓きやすいポイントにはまらずに工数削減の効果を得るためには
5つのベストプラクティスを組み込む
①事前検証
②適用範囲の明確化
③標準化
④共通化
⑤TIPS
3回の連載を1つにまとめた資料を近日中に公開予定です!
本ブログ記事にて公開する予定ですので、少しだけお待ちください。
「いますぐにほしい!」という方がいらっしゃいましたら、
お問い合わせフォームからご連絡いただけましたら幸いです。
|
市毛 正浩 (いちげ まさひろ)
東日本技術本部 情報基盤技術統括部
2008年 株式会社アシストに中途入社。
EAI/ETL製品「DataSpider」「Syncsort DMExpress」の提案活動とお客様支援に
従事。
地方公共団体情報システム標準化におけるデータ連携についてご紹介します。
DataSpider Servistaのグループ共同使用ライセンスについてご紹介いたします!