@hihihiroroのLog

ダラダラと。本ブログは、個人の意見であり、所属会社とは関係がありません。

「スケーラブルリアルタイムデータ分析入門」を読んだ

ずっと前に買っていたが読んでなかったので、今更ながらラムダアーキテクチャについてちゃんと読んでみようと思って読んでみた。

目次は以下。 

1章 ビッグデータを扱うための新しいパラダイム
2章 ビッグデータのためのデータモデル
3章 ビッグデータのためのデータモデル詳説
4章 バッチ層のデータストレージ
5章 バッチ層のデータストレージ詳説
6章 バッチ層
7章 バッチ層詳説
8章 バッチ層の例:アーキテクチャアルゴリズム
9章 バッチ層の例:実装
10章 サービス層
11章 サービス層詳説
12章 実時間ビュー
13章 実時間ビュー詳説
14章 キューイングとストリーム処理
15章 キューイングとストリーム処理詳説
16章 マイクロバッチストリーム処理
17章 マイクロバッチストリーム処理詳説
18章 ラムダアーキテクチャをより深く学ぶ

リアルタイムデータ連携についてはいまのところ作ることもないし、思想的なこともちゃんとみたことがなかったので読んでみたのだが、体系立てて書かれていて面白く読むことができた。

ローデータはとても大事なものとして存在しており、ローデータさえ異常がなければバッチ処理を何回やり直すことができるため、ローデータは死守する必要があることが説明されている。他にもデータが、重複なのか別データなのがわかるようにハッシュ値をつけて判別できるようにしておく。キューの仕組みを使ってのデータを更新する仕組みなども紹介されていて面白かったし参考になった。

それ以外にも集計時の概算アルゴリズムの説明や、バッチ層とサービス層、速度層のそれぞれの説明やそれぞれで使えるツールでの少しだけ具体的な説明などが書かれていてとても読みやすかった。ストレージについての話も書かれており昔のツールなどだとしても久しぶりなこともあり興味深く読むことができた。今でも使われているものもいくつかあるのでちゃんと理解をしたいなと思っている。

本書は、本当に広い範囲について詳しく書かれているなと思った。
一度読みすすめたくらいでは完全に理解できたとは言えないのでまた少したったら読んでみたいなと思っている。
その時にはカッパアーキテクチャ、その後のデータフロー、ビームモデルについてもまとめて読んでみたいなと思った。

まとめ

  • ラムダアーキテクチャの理論についての思想を読んでみた
  • 他のストリーム処理アーキテクチャとの違いを考えてみたい
  • 自分たちの基盤で必要となるものは何かと考えてはみたい