連載 :
  

TalendによるPostgreSQLとOracle Databaseのデータ連携の勘所

2011年6月24日(金)

オープン・ソース(OSS)のデータベース・サーバー・ソフト「PostgreSQL」の人気が高まっている。ライセンス・コストが必要ないことや、メーカーのサポート事情に左右されず、長期にわたって使い続けられるといったOSSのメリットが、データベースの世界でも確実に根付きつつある。

一方で、PostgreSQLには課題もある。既存システムとのデータ連携・統合が難しいという問題である。現状、多くの企業ではOracle Databaseを採用した基幹システムが存在しており、これとPostgreSQLを採用した業務システムを連携させて運用することが難しい。

この課題を解決するソフトが、異なるシステム間のデータベースを連携・統合する、データ統合ソフトである。特に、アシストが2011年2月に取り扱いを始めた「Talend」(開発会社は、仏Talend SA)は、OSSのデータ統合ソフトであり、PostgreSQLと組み合わせやすい。

なお、アシストでは、2011年7月26日(火)に、Talendを使ってPostgreSQLとOracle Databaseをデータ連携させる方法を、Webオンライン・セミナーのかたちで実施する。

PostgreSQLの課題は、既存システムとのデータ連携

そもそも、Talendのようなデータ統合ソフトが登場した背景には、異なる複数のシステム間でデータベースをデータ連携させることが難しい、という状況がある。基幹システムのデータを別の目的に活用したくても、簡単ではないのだ。

典型的な企業の場合、基幹システムはOracle Databaseで構築されている場合が多い。一方で、こうした基幹システムとデータ連携する業務システムには、OSSのメリットを生かしてPostgreSQLを採用したい。ここに、PostgreSQLとOracle Databaseをデータ連携させる需要がある。

PostgreSQLとOracle Databaseの混在環境には、主に2つのパターンがある。

1つは、バックエンドに基幹システム(Oracle Database)を配置し、このデータを参照・更新するフロントエンドの業務システム(PostgreSQL)を複数用意する、というパターン。もう1つは、基幹システムのデータをDWH(データ・ウエアハウス)などの情報系システムに持っていって活用するパターンである。

現状、PostgreSQLとOracle Databaseの混在環境では、データベース間でデータを連携させることが難しい。例えば、PostgreSQLからOracle Databaseにデータを反映させる場合、データベースの項目の関連付け(マッピング)や値の変換などを手動でやる必要がある。

データ連携だけでなく、システム連携の手段も手動となる。CSV(カンマ区切り)テキストでデータを渡したり、トランザクション・ログを別のデータベースに読み込ませてデータを反映させたりする必要がある。

データ統合ソフトで異機種データ統合を支援する

データ連携を自動化するのが、Talendのようなデータ統合ソフトだ。

PostgreSQLとOracle Databaseのデータ連携は、もっとも需要が大きい形態だが、これらに限らず、どのようなデータ・ソースであっても、データ統合ソフトを使うと、相互に連携させられる。また、Oracle Database同士のように標準機能だけでデータを連携させられるケースでも、Talendを間に挟むことで、より簡単に連携させられる。

実際に、データ統合ソフトの導入効果は高い。アシストが取り扱いを始めたのは2011年2月と最近のことだが、それ以前からTalendは、国内の著名ユーザーによって使われてきた。こうした代表的な事例が、マブチモーター株式会社と三菱UFJインフォメーションテクノロジー株式会社である。

マブチモーター株式会社は、部品表データの入力システム(Windows)と、基幹系の部品表管理システム(AS/400)との間で、Talendを使ってデータ連携させている。三菱UFJインフォメーションテクノロジー株式会社は、マスターとなる人事データを他システムで利用する際に、Talendを用いてETL(抽出・データ変換・登録)を行っている。

図1: データ統合ソフトで効果を挙げた事例。マブチモーター株式会社は、部品表データの入力システムを基幹システムから分離した(上図)。三菱UFJインフォメーションテクノロジー株式会社は、基幹の人事データを他システムで利用できるようにした(下図)

TalendはJava環境で利用できるOSSのデータ統合ソフト

Talendは、Java環境で動作するOSSのデータ統合ソフトである。

統合開発環境(IDE)のEclipseをベースとしたビジュアル開発環境を備えており(Eclipse RCPを使用)、データ連携・統合プロセスをノン・プログラミングで設計できる。加えて、ビジュアル開発の成果物は標準のJavaのコードであるため、修正や再利用なども容易である。

図2: データ連携・統合プロセスをノン・プログラミングで設計できる(クリックで拡大)

OSSであるため、ライセンス費用やソースコード開示、開発コミュニティによるサポートの面でメリットがある。

ライセンスは、無償版と、企業向けの有償版(サポート付きのサブスクリプション・ライセンス)を用意した。有償版の価格は、Talendを利用する人数で課金されるライセンス体系となっており、従来の有償ソフトがCPUコア数や接続単位で課金していく体系とは一線を画す。

無償版は、アシストのWebサイトからもダウンロードできる。アシストを介してダウンロードした場合、Talendの使い方を日本語で書いたガイドや、日本語のチュートリアルなどが配布パッケージに同こんされている。

図3: アシストの配布パッケージには、Talendの操作手順を日本語で書いたガイドが含まれる(画像のクリックでダウンロード・ページを参照)

開発コミュニティによって、随時、機能拡張が行われている。例えば、データベース接続用アダプタ(コンポーネント)として、標準で用意されている約450種のアダプタに加えて、コミュニティによって約150種のアダプタが提供されている。これにより、著名なデータベース・サーバーや業務アプリケーション、Webサービスまで、ほとんどのデータ・ソースを互いに連携させて統合できる。

中核機能のデータ統合(ETL)を簡単に設定・利用する

Talendは、以下の3つのソフトで構成する。(1)データ統合の基盤となる中核ソフト「Integration Suite」(無償版は「Open Studio」)、(2)データを修正してデータ品質を高める「Data Quality」(無償版は「Open Profiler」)、(3)マスター・データ管理ソフトの「MDM Enterprise Edition」(無償版は「MDM Community Edition」)、---である。

(1)Integration Suite/Open Studioは、異なるシステム間でデータを連携・統合するETL(抽出・変換・登録)/EAI(アプリケーション統合)ソフトである。データの収集、変換・加工、配信などのフロー(ジョブ)を定義して、スケジュール・バッチとして実行する。

異なるデータベースにまたがって、それぞれの項目同士を線でつなぐことで、データを連携させることができる。こうしたデータ連携の単位を個々のジョブとみなし、これらのジョブをフロー図にまとめ、一連の処理として定義できる。これをスケジュールに合わせてバッチ処理として実行する。

図4: 項目同士を線でつなぐことで、データを連携させられる(クリックで拡大)

データ統合において特徴的な機能が、データの変更を検知して別データベースに反映する仕組みを提供する、Change Data Capture(CDC)である。CDCを使うことで、PostgreSQLとOracle Databaseのデータ連携を容易に実現できる。

CDCによるシステム連携手段は、2つある。(a)1つは、特定の条件に応じてデータベース・サーバー側で実行するプログラムであるトリガーを用いるもの。所望のテーブルにデータが書き込まれた際に、その内容を、ログとして専用のテーブルに書き込むよう設定しておく。(b)もう1つは、Oracle Databaseのトランザクション・ログであるREDOログを利用するものである。

CDCは、トリガーによって生成したログ・テーブルか、あるいはOracle DatabaseのREDOログを、定期的に見に行く。ここで、データの追加や更新などの変更があった場合に、変更内容(SQL)をルールに合わせて変換したうえで、移行先データベースに登録する。

図5: Change Data Capture(CDC)を用いてデータ変更を検知する仕組み(クリックで拡大)

(2)Data Quality/Open Profilerは、データ・クレンジング・ソフトである。データの修正や、要らないデータの消去などを実施して、データ品質を高める。具体的には、ユーザー・データの重複を省く名寄せ処理や、住所データの表記ゆれの統一処理などを実行する。

PostgreSQLとOracle Databaseのデータ連携をWebセミナーで講演

アシストは、2011年7月26日(火)に、Talendを用いてPostgreSQLとOracle Databaseをデータ連携させる方法を紹介するWebオンラインセミナーを実施する。セミナーの主な対象は、「OSSに興味があるものの、不安を抱いているOracleユーザー」。どのような連携手法があって、どのようなメリットが得られるのかを、30分の時間の中で分かりやすく解説する。


TalendによるPostgreSQLとOracle Databaseのデータ連携の勘所

開催日 2011年7月26日(火)
開催時間 17:00~17:40(受付開始16:45)
会場名 Webオンラインセミナー
対象 ・データベース管理者
・情報システム関係者
参加費 無料
定員 25
申込受付期間 2011年5月24日(火)~2011年7月25日(月)

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています