学習とキャリアの肥やし場

【SESで働く文系卒SE&2児のパパ】の学習とキャリアプランの記録です。将来は田舎で農家兼業したいかも

モノリシック:パイプラインアーキテクチャ -『ソフトウェアアーキテクチャの基礎』11章【学習記録】

※ 本記事は、個人の学習メモとして書き留めたものです。
体系的・網羅的に整理した内容ではなく、誤りを含む可能性があります。

❓は 用語などchatGPTで解説させたもので出展がない場合があります。

題材『ソフトウェアアーキテクチャの基礎』

www.oreilly.co.jp

11章 パイプラインアーキテクチャ

「パイプとフィルター」アーキテクチャとしても知られている

📝用語・内容メモ

トポロジー:パイプとフィルターで構成

パイプはフィルター間の一方通行の通信を形成し、一般的にP2P方式で行われる

「P2P(ポイントツーポイント)」とは

一般的には中央サーバーを介さず、複数の端末(ピア)同士が対等な立場で直接通信・データ共有を行う方式を指す。

一方、パイプラインアーキテクチャで言う P2P は、
「各処理要素(フィルタ)が対等な立場で、パイプを通じて直接つながっている」 という 構造上の性質 を表しています。
ネットワーク分野のP2PBitTorrentなど)とは 文脈が違う ので注意が必要。

パイプ

パイプはフィルター間の通信チャンネルを形成。
データ形式は決まっていないが、高パフォーマンスのために少量データが好まれる。

フィルタ

4種類

  1. プロデューサー ... 開始点。出力のみ、別名”ソース”
  2. トランスフォーマー(変換器) ... 処理、map
  3. テスター ... 1つ以上の基準について検査、オプションによる出力を生成、reduce
  4. コンシューマー ... パイプラインフローの終了点(UI表示やDBに永続化など)

パイプとフィルターそれぞれの一方向性とシンプルさは、構成の再利用を促す。

事例

EDIツールやETLツールなど
データの変換、データベース間の流れや変更に活用される。

評価

こちらもモノリシックなアーキテクチャスタイルとしての特徴をもつ(分散アーキテクチャの課題を持たない)。
シンプルで扱いやすく、構成・維持のコストも比較的低い。

複雑なものには向かない。

感想

現場やブロックチェーン、基本情報で聞いた懐かしい用語もちらほら。 さくっと読んだ