SlidePub
Home
Categories
Login
Register
Home
General
Talend StudioでRoute(Apache Camel)を試す ~ファイルやメッセージキューなどを利用したESBによる連携~
Talend StudioでRoute(Apache Camel)を試す ~ファイルやメッセージキューなどを利用したESBによる連携~
QlikPresalesJapan
12 views
23 slides
Sep 16, 2025
Slide
1
of 23
Previous
Next
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
About This Presentation
Talend StudioでRoute(Apache Camel)を試す ~ファイルやメッセージキューなどを利用したESBによる連携~
Size:
5.56 MB
Language:
none
Added:
Sep 16, 2025
Slides:
23 pages
Slide Content
Slide 1
Talend Studio で Route(Apache Camel) を試す ~ファイルやメッセージキューなどを利用した ESB による連携~ Qlik Tips 2025/09/16
Slide 2
はじめに Talend Studio では、ファイルやメッセージキューなどを利用した ESB(Enterprise Service Bus) による連携処理を、ローコード / ノーコードで開発可能です。 ESB は、企業内の様々なシステムを接続し、データやサービスとの連携を可能にするアーキテクチャパターンで、 Talend Studio は「 Apache Camel 」をフレームワークとして採用し、 Route( ルート ) と呼ばれるメッセージフローを容易に作成できます。 このセッションでは、 XML ファイル や ActiveMQ( Java Message Service ) などを使った開発手順に加え、 Eclipse を利用した開発についても説明します。 2 ESB(Enterprise Service Bus) Event-Driven アーキテクチャ メッセージ ( データ ) を処理してルーティング
Slide 3
Talend Studio と ESB 連携 /Route 開発 3
Slide 4
4 Talend Studio によるジョブの開発 IDE(Eclipse ベース ) によるデータ統合 / データ連携開発環境 機能別部品を接続するシンプルな操作性によりデータ統合のフローを容易に開発 データ統合の様々な局面をサポートする充実した機能 開発とデバッグの同時進行、仕様書やテストの自動生成といった支援機能が豊富 GUI 統合開発環境 Talend Studio データソース ERP/CRM DBMS ファイル クラウド Web サービス データターゲット ERP/CRM DBMS ファイル クラウド Web サービス
Slide 5
Talend Data Fabric プラットフォーム製品の以下のライセンスが必要 オンプレミス製品 : Data Services Platform または Real-time Big Data クラウド製品 : Could API Services Platform または Cloud Data Fabric エンタープライズサービスバス (ESB) 上で「 常時 」稼働するタイプのジョブ Talend Runtime 上にデプロイ 「 Apache Camel 」を全面採用 https://camel.apache.org/ cXXXX 系 ( 例 : cTimer ) のコンポーネント群を利用してジョブをデザイン・実装 5 ルート (Route) とは メッセージをサービス ( またはエンドポイント ) 間で移動させる方法を定義するルール
Slide 6
オープンソースの Java ベースのフレームワークで、複数システム間の統合 (EIP) の簡便化を目的として開発された 2007 年 7 月に Apache Camel 1.0 がリリースされ、 2025 年 9 月現在の最新版は Apache Camel 4.14.0 メッセージを受信して処理を行った後、メッセージを送信するなどのルーティングは、様々なコンポーネントを利用して行う REST ・ SOAP(Apache CXF)/Java Message Service(JMS)/JDBC 接続 /FTP/ ファイル等の様々なトランスポートプロトコル・メッセージングモデルをサポート Apache Camel のオンラインドキュメント ( 英語 ) https://camel.apache.org/docs/ Apache Camel の解説書 ( 洋書 ) - Camel in Action 2nd Edition https://www.manning.com/books/camel-in-action-second-edition 6 Apache Camel とは Enterprise Integration Patterns(EIP) の実装を可能にする
Slide 7
Talend Studio による ESB 開発のメリット 開発のしやすさ、機能の充実、拡張性・再利用性、運用性 GUI ベースで ESB 開発が可能(ノーコード/ローコード) コーディング不要で Apache Camel ベースのルート構成を視覚的に設計可能 学習コストが比較的低く、すぐに開発を開始しやすい 多種多様なプロトコルとの接続性 Apache Camel ベースのルーティングロジック 複雑なルーティングを作成できる豊富なコンポーネントを搭載 REST ・ SOAP/JMS/FTP/JDBC 等に対応 条件分岐、再試行、集約、分割などエンタープライズ統合パターンを標準サポート Talend Runtime によるデプロイ環境 OSGi ベースの軽量 ESB コンテナ (Talend Runtime) にデプロイ 柔軟で拡張性のあるマイクロサービス構築が可能 ジョブの管理・監視 Talend Studio の ETL ジョブと連携可能 ESB (メッセージ連携)から ETL (データ連携)を呼び出し可能 7
Slide 8
通常の Eclipse で Apache Camel の開発を試す 8
Slide 9
Eclipse で Maven を設定する 設定の [Maven] で、 apache.org 向けの Remote Archetype Catalog を追加する https://repository.apache.org/content/groups/public/ 新規 Maven プロジェクトで、 camel-archetype-java を選択 シンプルな XML ファイルのコピー連携の Java プログラムが生成される 9
Slide 10
Apache Camel の Java プログラムを確認して実行する 10
Slide 11
Talend Studio で Route 開発 11 ファイル ( cFile ) と分岐 ( cMessageRouter )
Slide 12
XML ファイルのコピー連携を開発してみる 上述した Eclipse による Apache Camel のルーティングと同じものを実装 ルートを新規作成し、ファイル読取用に cFile コンポーネントを 1 個配置し、プロパティを設定する 各種コンポーネントを配置すると、 Apache Camel のルーティングのコードが自動生成される 12
Slide 13
XML ファイルのコピー連携を開発してみる ( 続き ) ログ用に cLog コンポーネントを 2 個、条件分岐用に cMessageRouter を 1 個、ファイル書き出し用に cFile を 2 個配置し、プロパティを設定し、 Route や分岐の線で繋ぐ when 以降のフロー ( タイプとして xpath の書式を指定 ) 13
Slide 14
XML ファイルのコピー連携を開発してみる ( 続き ) otherwise 以降のフロー 実行し、適当なタイミングで強制終了 14
Slide 15
Tips: バイナリファイルを cFile コンポーネントで扱うには 画像ファイルのような ( 例 : .jpg) バイナリファイルを読み書きする場合は、 cFile コンポーネントの「エンコーディング」プロパティを「 CUSTOM 」に設定し、値を空文字「 ”” 」にする その他の様々なパラメータは、 [ 詳細設定 ] プロパティで設定する 15
Slide 16
Talend Studio で Route 開発 16 Apache ActiveMQ と、 JMS( cJMS )
Slide 17
ファイル -> Route -> JMS -> Route -> ログ 2 つの Route を作成してみる 複数の XML ファイルを読み込み、その XML データをメッセージキューに送信し続ける メッセージキューから XML データを受信し続け、その XML データをログに出力する XML ファイルは前述した XML ファイルと、 cFile コンポーネントの設定をそのまま流用 メッセージキューとして、 Apache ActiveMQ (Classic) を利用 https://activemq.apache.org/ 最新版の 6.1.7 をダウンロードし、展開して起動 管理コンソールで、キュー「 testqueue 」を作成 Route からは、 JMS(Java Message Service) API を利用して接続し、送受信 17
Slide 18
ファイル -> Route -> JMS cFile を配置し、 Apache Camel 内部のメッセージと、 XML ファイルのデータをそれぞれ出力する cLog を 2 個配置 XML データそのもの ( メッセージの本体 /Body) を出力する場合は、 ”${body}” を指定 Simple Expression Language https://camel.apache.org/components/4.14.x/languages/simple-language.html 18
Slide 19
ファイル -> Route -> JMS( 続き ) ActiveMQ への接続設定と接続処理のために、 cMQConnectionFactory と cJMS を配置 cJMS から、 cMQConnectionFactory を参照 Apache Camel のメッセージの送信先として、キュー「 testqueue 」を指定 実行し、ログ (2 種類 ) を確認 19
Slide 20
ファイル -> Route -> JMS( 続き ) ActiveMQ に送信され、まだ受信されていない JMS メッセージ (2 個 ) を確認 20
Slide 21
JMS -> Route -> ログ ActiveMQ への接続設定と接続処理のために、 cMQConnectionFactory と cJMS を配置 cJMS から、 cMQConnectionFactory を参照 Apache Camel のメッセージの受信先として、キュー「 testqueue 」を指定 21
Slide 22
JMS -> Route -> ログ ( 続き ) 受信した JMS メッセージに対応する Apache Camel 内部のメッセージと、受信した XML ファイルのデータをそれぞれ出力する cLog を 2 個配置 XML データそのもの ( メッセージの本体 /Body) を出力する場合は、 ”${body}” を指定 実行し、ログ (2 種類 ) を確認 22
Slide 23
Thank you ! 23
Tags
Categories
General
Download
Download Slideshow
Get the original presentation file
Quick Actions
Embed
Share
Save
Print
Full
Report
Statistics
Views
12
Slides
23
Age
77 days
Related Slideshows
22
Pray For The Peace Of Jerusalem and You Will Prosper
RodolfoMoralesMarcuc
32 views
26
Don_t_Waste_Your_Life_God.....powerpoint
chalobrido8
33 views
31
VILLASUR_FACTORS_TO_CONSIDER_IN_PLATING_SALAD_10-13.pdf
JaiJai148317
31 views
14
Fertility awareness methods for women in the society
Isaiah47
30 views
35
Chapter 5 Arithmetic Functions Computer Organisation and Architecture
RitikSharma297999
26 views
5
syakira bhasa inggris (1) (1).pptx.......
ourcommunity56
29 views
View More in This Category
Embed Slideshow
Dimensions
Width (px)
Height (px)
Start Page
Which slide to start from (1-23)
Options
Auto-play slides
Show controls
Embed Code
Copy Code
Share Slideshow
Share on Social Media
Share on Facebook
Share on Twitter
Share on LinkedIn
Share via Email
Or copy link
Copy
Report Content
Reason for reporting
*
Select a reason...
Inappropriate content
Copyright violation
Spam or misleading
Offensive or hateful
Privacy violation
Other
Slide number
Leave blank if it applies to the entire slideshow
Additional details
*
Help us understand the problem better