1

スプリング統合を使用して、大規模なデータパッケージでETL操作を実行する必要があります。たとえば、次のような巨大なxmlファイルがあります。

<school>
    <cource name="A">
        <class>
            <name>A1</name>
            <students>20</students>
        </class>
        ...
        <class>
            <name>A35</name>
            <students>19</students>
        </class>
    </cource>
    <cource>
    ...
    </cource>
</school>

結果は2つのcvsファイルになります。

初め:

A1;20
...
A35;35

2番:

A; 754
..
C; 232

これは単純な変換操作であり、コンテナーでの集計関数です。「クラス」および「コース」レコードの数は非常に多く、メモリ内の入力データを解析できません(したがって、要素ごとに反復する必要があります)が、ETLフローを簡単に変更するために統合パターンを使用したくありません。

どうすればそれを行うことができますか?

4

2 に答える 2

3

Spring Integrationを使用してファイルの存在を検出し、 Spring Batchジョブを起動できます( でJobLaunchingMessageHandler提供されているspring-batch-integrationプロジェクトで提供されている を使用spring-batch-admin)。

于 2013-01-15T20:42:12.940 に答える
0

ItemReader と ItemWriter が関連付けられたステップを作成できます。大きなファイルは、全体として読み取られるのではなく、ストリーミングされます。したがって、これは魔法を行うはずです。

詳細はこちら。例はこちら

于 2013-01-15T19:22:51.887 に答える