もっと早く読もうと思っていたのだが読めたので。
目次。
1章 データエンジニアリング概説
2章 データエンジニアリングライフサイクル
3章 適切なデータアーキテクチャの設計
4章 データエンジニアリングライフサイクルにおけるテクノロジの選択
5章 ソースシステムにおけるデータ生成
6章 ストレージへの保存
7章 データ取り込み
8章 クエリ、データモデリング、変換
9章 アナリティクス、機械学習、リバースETL へのデータの提供
10章 セキュリティとプライバシー
11章 データエンジニアリングの未来
付録A シリアライズと圧縮技術の詳細
付録B クラウドのネットワーク
実際に働いてみて幅広い分野に関わること多いよなと思っていたけど、本書でデータエンジニアが気にするべき領域が書かれていて本当に幅広く知識をもって働かなきゃいけないんだと気付かされた。本書ではツールや特定技術ソリューションの話題は避け、データエンジニアリングの背後にある普遍的な技術概念の説明に徹してるとのことなので具体的な話だけではないことを学ぶことができた気がする。
本書では、データをプロダクト価値に変えていく一連の流れをデータエンジニアリングライフサイクルという言葉で表現している。データエンジニアリングライフサイクルは以下と紹介されている。
- データの生成
- 保存
- 取り込み
- 変換
- 提供
また、これらの土台となる要素としてセキュリティ・データ管理・DataOps・データアーキテクチャ・オーケストレーション・ソフトウェアエンジニアの説明がされている。
データアーキテクチャの例としていくつか例として取り上げられている。例えば、データウェアハウス、データレイク、Lambdaアーキテクチャ、Kappaアーキテクチャ、Dataflowモデルなどなど。この辺りがツールに偏っての説明ではないためどんなものを使う時でも話がしやすいようになっているなと思った。
データ生成の部分ではデータベースについての話や、保存のための箇所ではストレージに対するトレードオフなど自分たちが関わるサービスについては知識を持つことの大事さが紹介されていた。たしかに性能問題などが起きた時など結局色々と調べることが多いので広く勉強をしておく必要はあると再認識した。そのための勉強する範囲がまとまっているのでとても参考になった。
どの章にも参考資料がたくさん紹介されている。本だけではなくブログなども記載されておりどんどん幅広い勉強ができるだろうなと思うほどの量が書かれているので順番に読んでいくことをすすめたい。
ストリーミングの話やセキュリティ、モデリングなどはあまり自分から関わりにいってないところなので苦手意識があるので勉強はしないとなと思っている。勉強するのに良さそうなものをまずは参考資料から探そうと。
まとめ
- データエンジアリングの全体像ってこんなにかと思うほど広範囲なことがまとめられている
- 自分が知っている、関わっている範囲は狭いなと認識できたのでもっと頑張らなきゃ
- 引き続き勉強頑張っていかないと
- いろいろやることあって面白い職種なので興味ある方はぜひお話ししましょう!