こんにちは。CData Software Japan の色川です。
この記事ではCData Arc の汎用データベースコネクタを使って、DB2 for IBM i と連携する方法を紹介します。
CData Arc のDatabase Connectors では、メジャーなデータベースへの専用コネクタを数多く提供しています。
CData Arc - Database Connectors | Version 22.0.8285
ですが、今現在出回っているデータベースはこちらのサイトに載るだけでも数百を数えますので、Arc の専用コネクタに無いデータベースと接続したいケースもあると思います。こんな時、CData Arc ではDatabase Connectors に含まれる汎用のデータベースコネクタで、3rd Party のJDBC Driver を利用することが可能です。CData Arc の専用コネクタにないデータベースであってもJDBC Driver が提供されていれば、CData Arc から接続して連携の自動化を実現することができます。
この記事では、CData Arc の汎用データベースコネクタを使って、DB2 for IBM i と連携する方法を紹介します。
DB2 for IBM i (DB2/400) とは
DB2 for IBM iはIBM のオペレーティングシステムIBM iに標準搭載されているリレーショナル・データベース・マネージャーです。
日本でのIBM i(AS/400)の人気は大変高く、こちらの記事によると、グローバルでのインストールベースの約10%を占めており、北米・欧州に次ぐ第3の大きな市場だそうです。同年のこちらの記事では、IT 市場規模全体でみると日本のシェアは約3.3% とのことなので、日本でのIBM i の人気の高さがよくわかります。
IBM i はそのハイレベルな信頼性、互換性で、これからも愛され続けるプラットフォームの1つかと思います。
CData Arc
CData Arc は、CData 製品の中で「自動化/Automate」を担うデータ連携ツールです。「B2B 連携をもっとシンプルに」をコンセプトに、ファイル連携 & DB 連携 & API 連携といったB2B 連携に必要なすべてをノーコード・ローコードでつなぐことができるプラットフォームです。
CData Arc のDatabase Connectors には、DB2 コネクタが含まれますが、このコネクタでの接続ターゲットは、DB2 LUW で、DB2 for IBM i は含まれません。この記事では、汎用データベースコネクタを使って、DB2 for IBM i と連携します。
事前準備
事前準備として、必要な製品のインストールや、連携元・連携先の構成を確認していきましょう。
CData 製品のダウンロードとインストール
この記事のシナリオでは、こちらの製品を利用します。30 日間のトライアルライセンスが提供されていますので、ぜひお手元で試してみてください。
この記事では、CData Arc のJava 版を利用します。インストールはこちらを参考にしてください。この記事では試しやすいように、Windows 上でJava 版を利用しました。
CData Arc スタートアップガイドとナレッジベース
CData Arc を使いはじめるときは、こちらも参考にしてください。
CData Arc に関するナレッジは、こちらにまとめています。あわせて参考にしてください。
DB2 for IBM i 用JDBC Driver の入手と配置
IBM i 上のJVM 以外からのDB2 for IBM i との接続には、BM が提供するIBM Toolbox for Java か、そのオープンソース版であるJTOpen に含まれるJDBC Driver(jt400.jar)が必要です。この記事ではJTOpen からダウンロードしたjt400.jar を利用しました。
JTOpen | Overview (sourceforge.net)
Toolbox for Java/JTOpen download | SourceForge.net
jt400.jar はCData Arc をインストールしたlib 配下に配置してください。
DB2 for IBM i と連携するフローを作成する
この記事は、汎用データベースコネクタを利用したDB2 for IBM i への接続方法の紹介を目的にしていますが、フローの簡単な例として、DB2 for IBM i のデータをCSV ファイルに出力するフローを作成してます。
コネクタ 内容
1 Database DB2 for IBM i に接続してデータを取得します。
2 CSV Map 1 で取得したデータ(XML 形式)を任意のCSV フォーマットにマッピング
3 File 2 の変換結果(CSV)を指定したディレクトリに出力
汎用データベースコネクタ(Database コネクタ)
最初に、この記事の目的であるDB2 for IBM i へ接続するDatabase コネクタを設定します。データベースカテゴリから「Database コネクタ」を選択し、フローキャンバスへ配置します。
ドライバー名に「Other」を選択します。
ドライバークラスに利用する3rd Party のJDBC Driver クラス名を指定します。この記事では、jt400.jar のJDBC Driver クラス名である「com.ibm.as400.access.AS400JDBCDriver」を指定します
データベースURL に利用する3rd Party のJDBC Driver で求められる接続URL を指定します。この記事では、下記のようにユーザー名、パスワードと、接続するライブラリ、メタデータの取得方法を指定しています。
IBM Toolbox for Java で提供されるJDBC Driver(jt400.jar)の接続文字列の書式や、設定可能なJDBC プロパティについては、IBM 社のドキュメントなどを参照してください。
AS400JDBCDriver (ibm.com)
IBM Toolbox for Java JDBC properties - IBM Documentation
実際に接続できるかを「接続テスト」で確認します。無事にDB2 for IBM i と接続することができました。
この後の基本的な操作は、他のDatabase Connectors と同じ使用感で利用することができます。
アクションを「Select」に設定し、テーブルの「追加」で、指定したライブラリに含まれるテーブルの一覧から、取得対象のテーブルを選択します。
取得レコードを1つのファイルにまとめて出力するために、「高度な設定 - 最大レコード数」に「-1」を設定します。
これでDB2 for IBM i からデータを取得する設定ができました。アウトプットタブの「受信」で想定通りに取得できることを確認します。
CSV Map コネクタ
次にDB2 for IBM i から取得したデータ(XML 形式)を任意のCSV フォーマットにマッピングするためにCSV Map コネクタを設定します。コアカテゴリから「CSV Map コネクタ」を選択し、フローキャンバスへ配置します。
Database コネクタから、CSV Map コネクタにフローをつなぎます。これでDatabase コネクタでDB2 for IBM i から取得するデータのスキーマを認識することができます。
デスティネーションファイルには事前に用意した以下のようなCSV フォーマット(ヘッダー項目を記載したCSV ファイル)をアップロードして指定します。
マッピングを指定したら保存します。
File コネクタ
最後に、CSV Map で変換したCSV ファイルを指定したディレクトリに出力するために「File コネクタ」を設定します。コアカテゴリから「File コネクタ」を選択し、フローキャンバスへ配置します。
出力先ディレクトリを「パス」に指定します。
CSV Map コネクタからFile コネクタにフローをつなぎます。
これで「DB2 for IBM i のデータをCSV ファイルに出力するフロー」 が出来上がりました。
連携フローの実行
作成したフローを実行して確認してみましょう。起点となるDatabase コネクタからフローを実行してみます。アウトプットタブから「受信」を実行します。
指定したディレクトリにCSV ファイルが出力されていることが確認できます。
おわりに
この記事では、CData Arc の汎用データベースコネクタを使って、DB2 for IBM i と連携する方法を紹介しました。つなぎたいデータベースの専用コネクタが無い場合 & そのデータベースへ接続するJDBC Driver が利用できる場合、こちらの方法を試してみてください。
CData Arc はシンプルで拡張性の高いコアフレームワークに、豊富なMFT・EDI・エンタープライズコネクタを備えたパワフルな製品です。CData Drivers との組み合わせで250を超えるアプリケーションへの連携を実現できます。必要な連携を低価格からはじめられる事も大きな特長です。
皆さんのつなぎたいシナリオでぜひ CData Arc を試してみてください。
製品を試していただく中で何かご不明な点があれば、テクニカルサポートへお気軽にお問い合わせください。
この記事では CData Arc™ 2022 - 22.0.8285.0 を利用しています。
関連コンテンツ