「アプリケーションエンジニアのためのApache Spark入門」を読んでみた

アプリケーションエンジニアのためのApache Spark入門

アプリケーションエンジニアのためのApache Spark入門

  • 作者: 新郷美紀,今井雄太,河村康爾,木村宗太郎,外賀伸治,須田桂伍,高木章光,田中裕一,森下雄貴
  • 出版社/メーカー: 秀和システム
  • 発売日: 2018/02/17
  • メディア: 単行本
  • この商品を含むブログを見る

詳細なソースコードのところは読み飛ばしてしまいましたが、だいたい全部ざーっと読んでみました。

ここ最近Hadoopカンファレンスもあったし、いや、その前からSpark使ってみたいなーと思ってたんですね。

仕事でもCloudera Hadoopを使ってることだし、使ってみたい!っと考えてるんですが、なにぶんSparkを使うようなケースもないし、使ってみたらメモリバカ食いしないよね!?とかをおそれています。

どうなるかわからないけど、とりあえず知識だけは入れておこうと思って読んでみました。

Sparkに関する本はいろいろとあるんですが、比較的新しい本がいいのでこれにしました。

ざっくり内容とか

  • 農業システムを想定して、土壌の状態を検知するIoTデバイスからログを流し込んでSparkで処理するという架空のシステムで説明されてます。
  • 環境構築方法
  • データのinputはFluentd+Kafka、その後Sparkで分析、データ保存はCassandra
  • Spark Streamingの使い方
  • ソースはpythonでPySparkで実行してる。
  • Sparkの機械学習ライブラリの説明も詳しい
  • データ保存どうするか?cassandra, hadoop, s3などとの連携の説明もある
  • データ分析プロセスの説明
  • Jupyter との連携
  • 全体システムアーキテクチャの説明もある

全体的にデータ分析はPythonでSpark を使うPySparkでやっており、段階的でわかりやすいと感じました。

また、最近はやりのKafkaも使ってて面白いなと思いました。

Amazonカスタマーレビューにもありましたが、やっぱりSparkの本ならScalaでコーディングするのかな?と期待してしまいますね。

Pythonでもいいけど、せっかくお金出してSparkを学ぶならサンプルコードにでもScalaもあるといいなと思いました。

とはいえ、データ収集はFluentd+Kafka、全体的なシステムアーキテクチャ、Sparkのアーキテクチャ、JupiterとのSpark連携、データ分析プロセス、.....とアーキテクチャまでけっこう広い範囲を網羅した本なのでデータ分析インフラをやってる人には満足できる内容じゃないかと思えます。

振り返って気づきますね、データ分析にかかわるインフラ担当にとっては有益な本ですよ

個人的にはメモリがどこまでバカバカ使うのか気になってます。
こればかりは使ってみないとわからないでしょう。

あー ばりばりSpark使ってみたいのう。

アプリケーションエンジニアのためのApache Spark入門

アプリケーションエンジニアのためのApache Spark入門

  • 作者: 新郷美紀,今井雄太,河村康爾,木村宗太郎,外賀伸治,須田桂伍,高木章光,田中裕一,森下雄貴
  • 出版社/メーカー: 秀和システム
  • 発売日: 2018/02/17
  • メディア: 単行本
  • この商品を含むブログを見る

あと他にもSpark本読みたいのがいろいろあります。

Sparkによる実践データ解析 ―大規模データのための機械学習事例集

Sparkによる実践データ解析 ―大規模データのための機械学習事例集

Advanced Analytics with Spark: Patterns for Learning from Data at Scale

Advanced Analytics with Spark: Patterns for Learning from Data at Scale

うー読んでみたい!