初めまして、弊社で1ヶ月半ほどインターンとして働いているt_sakaiです。 インターンシップの課題として、メモリ使用量が大きくて将来問題になりそうなバッチ処理をスケールアウトできるように書き換えるという課題に取り組みました。 解決手段として流行りのApache Sparkを使ってみたので、本記事ではこれについて書こうと思います。 本記事で使っている言語はScalaです。 Scalaについては、弊社のk_oomoriが書いた記事があるのでよろしければご覧ください。 紹介する内容 前編(本記事) 今回解決したかった課題 なぜSparkを選んだのか RDDについて 簡単なプログラムをSparkで書き換える 後編 本番プログラムをSpark用に書き換える はまりどころ 紹介しない内容 Hadoopとの比較 Spark環境の構築 性能チューニング 解決したかった課題 弊社のScalaで書かれたある