TL
ホーム/ データ工学・ビッグデータ

DATA ENGINEERING TRACK

データ工学・ビッグデータ

バッチ/ストリーム処理・Spark・列指向・レイクハウス・CDC… ビッグデータ基盤の仕組みを、まず TL;DR でつかみ、そこから原理まで。

14
原理記事
14
TL;DR
TL;DR から、分散データ処理・ストリーム・分析基盤の原理へ。

Concept Map

原理・深掘り

分散データ処理と分析基盤の仕組みを、まず TL;DR で要点をつかみ、そこから原理まで。

TL;DR応用

ETLとELTパイプライン

分析基盤へのデータ流し込みが壊れる・重複する・遅い、を根本から断ちたい人へ。ETLからELTへ移った理由、依存管理と再実行、冪等な設計とバックフィル、データ品質を原理から整理します。

TL;DR応用

MapReduceとシャッフル

なぜ分散集計はシャッフルで詰まるのか、その正体をつかむために。map/reduceの処理モデルとシャッフル・ソートの役割、データ局所性による転送削減、そして全対全通信がボトルネックになる原理を解きほぐします。

TL;DR応用

MPPデータウェアハウス

テラバイト級の集計が数十秒で返る理由を、内部から理解したい人へ。シェアードナッシングによる大規模並列処理、分散キー・ソートキー設計、データ再分散(シャッフル)、クエリの並列実行プランの原理を解きほぐします。

TL;DR応用

OLAPとOLTPの違い

分析基盤の設計を任されたとき、なぜ本番DBをそのまま集計に使うと詰まるのかがわかります。取引系と分析系のワークロード特性の根本差、スタースキーマとディメンションの狙い、列指向がなぜ分析に効くのかを原理から解説します。

TL;DR応用

SparkのRDDとDAG実行

SparkがなぜMapReduceより速いのかを原理からつかむために。遅延評価で変換を系譜(lineage)として溜め、DAGスケジューラがシャッフル境界でステージへ切り、パーティションをタスクとして並列実行する仕組みを解説します。

TL;DR応用

ストリーム処理のexactly-once

「二重課金も取りこぼしもない」ストリーム集計を、なぜ・どう作るのか腑に落とせます。at-least-once/at-most-onceの限界、チェックポイントとバリア、冪等書き込み、トランザクショナルシンクを原理から解きほぐします。

TL;DR応用

ストリーム処理のウォーターマークと窓

無限に流れ続けるイベントを、遅れて届くデータも取りこぼさず正しく集計したい人へ。イベント時間とウォーターマークで「もう来ない」を判定し、窓を閉じる原理と、遅延と完全性のトレードオフを設計として選ぶ方法がわかります。

TL;DR応用

データリネージとカタログ

何百ものテーブルとパイプラインの中で「この数字はどこから来たのか」「この列を変えたら何が壊れるのか」に即答したい人へ。メタデータを収集し、リネージで依存を追跡し、カタログで発見可能にする原理と、影響分析・ガバナンスへの効かせ方がわかります。

TL;DR応用

パーティショニングとバケッティング

分析基盤のクエリが遅いのは、多くの場合スキャン量とシャッフル量が過大だからです。パーティションで読む前に捨て、バケットでシャッフルを消し、スキューと小ファイル問題を避ける設計の勘所を原理から押さえられます。

TL;DR応用

バッチ処理とストリーム処理

日次バッチとリアルタイム処理のどちらを選ぶかで迷う人へ。有界データと無界データという根本の違いから、レイテンシとスループットのトレードオフ、Lambda/Kappaアーキテクチャの是非までを原理で整理し、使い分けの判断軸が持てます。

TL;DR応用

ベクトル化クエリ実行

分析クエリが同じCPUで数倍速くなる理由を原理から掴みたい人へ。行を1件ずつ処理するVolcanoモデルの限界、列指向の一括処理・SIMD・キャッシュ効率・コード生成が効くメカニズムを、分析基盤の観点で解きほぐします。

TL;DR応用

レイクハウスとテーブルフォーマット

安価なオブジェクトストレージ上のParquetの山に、ウェアハウス並みのACID・タイムトラベル・スキーマ進化を後付けしたい人へ。Iceberg/Delta/Hudiがメタデータ層でこれをどう実現するかを内部構造から解説します。

TL;DR応用

ログベースCDC(変更データキャプチャ)

夜間バッチのフルロードをやめ、業務DBの変更を数秒で分析基盤やデータレイクへ届けたい人へ。トランザクションログ(binlog/WAL)を読むログベースCDCの仕組みと、初期スナップショット・順序保証・下流配信の原理がわかります。

TL;DR応用

列指向フォーマット(Parquet・ORC)

分析基盤で「なぜ Parquet に置くと速く安くなるのか」が腑に落ちます。オブジェクトストレージ上のオープンな列指向ファイルが、スキャン量課金を桁で減らし、複数エンジンで同じデータを共有できる原理を分析基盤の視点で押さえられます。