PR
連載 :
  

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のWebサイトにログインすることでさまざまな限定特典を入手できるようになります。

Think IT会員サービスの概要とメリットをチェック

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