「.NET 開発基盤部会 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
フロー定義を「as a code」として管理するサブ・プロジェクト
小さなフットプリントでデータフローを実行できるサブ・プロジェクト
大量のデータがどこから来てどこに行くのか、コンプライアンスの観点で追跡するプロジェクト
公式文書に、
SOA、APIベースのシステム結合、IoT、BigData?、あとはMicroServices?
(These include things like; Service Oriented Architecture [soa],
the rise of the API [api][api2], Internet of Things [iot], and Big Data [bigdata].)
と書かれている。
ツールの仕様としては、どちらにも適合する可能性がある。
バッチ指向なので適合しない可能性がある(性能検証などが必要)。
イベント指向なのでこちらのほうが適合し易い。
Remote Process GroupでHTTPなどのEndpointを定義してS2Sが可能。
以下での利用が想定されている。
個々のFlowFile?が持つKeyValue?のメタ情報。
扱うデータの本体(バイナリ形式のKeyValue?)
「FlowFileにどんな処理を施すか」を表す。
「Processorが行った処理に応じて,どのProcessorにどのFlowFileを届けるか」を表す。
# | NiFi? Term | FBP Term | Description |
1 | FlowFile? | Information Packet | システム間を移動する各オブジェクトのことを示している。 バイナリ形式のKeyValue?で属性文字列を保持している。 |
2 | Processor | Information Packet | Enterprise Integration Patterns(EIP)においてルーティング、変換、システム仲介を行うもの。 与えられたFlowFile?の属性、およびFlowFile?の流れるストリームにアクセスする。 0から任意の数のFlowFile?群を処理単位として認識し、その単位で処理やコミット、ロールバックを可能とする。 |
3 | Connection | Bounded Buffer | Processor間の実接続を示す。 キューとして動作し、様々な処理を異なるタイミングで差し込むことが可能。 これらのキューは動的な優先度付け機構、バックプレッシャー機構を有する。 |
4 | Controller | Scheduler | プロセス、スレッドの配置や接続関係について統括している。 Processor間のFlowFile?のやり取りを容易にするBrokerとして動作する。 |
5 | Process Group | subnet | プロセスとConnectionの一群を指し、外部からメッセージを受け取るInputPort?や出力するOutputPort?を有する。 これらの組み合わせによってProcess Groupは新たなコンポーネントの生成も可能になっている。 |
https://www.slideshare.net/KojiKawamura/presentations