2/8 のHadoop Spark Conference 2016 参加サポートです。今回はSpark Conference 併催になります。1,300名を超える申込者と人気で、各セッション立ち見も出るほど1日中熱気に満たしていました。
キーノート
Hadoopはひとつものではなくなった。
従来は、HDFS+MapReduceが中核でしたが、組み合わせで使っていく方向に。
パッケージの多様化。
並列分散エンジン(Apache Tez)も登場し、現在変化も激しいので、現在の状況を見ておくことが重要
hadoop上で多様なエコシステムが動作している。
バッチ処理をストリーミング処理を透過的に行えるものも。Google Dataflow (Apache Beam)
https://cloud.google.com/dataflow/blog/dataflow-beam-and-spark-comparison
ResourceManagerであるYARNもCPUだけでなく、GPCPUなどにも焦点を置く方向に。
HDFSについても、SSD、メモリの活用で中間データのR/Wの高速化
無停止でローリングアップデート
メンテナンスリリース(2.6、2.7)の継続、Java8対応
Spark 2.0
ユースケースてには、BIが一番。Dataware、レコメンドエンジン、ログ、不正検出等にも
サブクエリー、ビューもDataFrames APIで
Tungsten backendでStreamingの課題を解決
Next-gen Streaming with Dataframesは数週間後発表があるので
Spark 2.0では、125 million rows/secのベンチ結果も。(1.6では13.95 milliion rows/sec)
今年4月~5月にリリース予定。
JVMチューニング
heap memoryのサイズを変更するだけでパフォーマンスが変わる
Spark 1.6ではGCのオーバーヘッドが減っている
ストリーミングアーキテクチャー StateからFlowへ
3-Tierとマイクロサービスの違い
従来のバッチの有限の入出力に対し、ストリーミングは、無限の入出力、サービス間遅延にも考慮が要
非同期なサービス間疎結合の設計が必要
これに対応できるのが、Kafka、MapR Stream
ビックデータ可視化の性能を検証
DWHに比べて、デフォルト設定のHiveは遅い
Spark SQLは、ヒット件数が多だと、1/2
チューニングポイント
エグゼキュータ、パーティション数
データフォーマット
Hive
分散処理エンジンにMR使用している場合は、Apache Tezへの切替を
MLLib Now and Beyond
[slideshare id=58034098&doc=2016-02-06spark-conference-japan-160209041021]
手軽に機械学習を扱うことができる
DataSetとDataFrameは今後統合予定
MLLib Pipeline API
Modelを、S3他クラウドストレージに保存することもできるが、永続化に対応していないアルゴリズムもあるので注意が必要
MLLib 2.0 Roadmap
時系列データのSparkでの処理
時系列データをSparkで扱うと不便になるのでは?
が、結論時系列データも問題なく扱える。
Hive on Spark
Hiveは遅い。Hiveクエリによっては、数時間、1日かかるケースも
Hive on Sparkは、HiveQ互換なので、Hive資産の再利用も可能、バッチ処理が1/3になる。
また、Spark on elasticSearch -hadoop データの可視化ツールとして導入コストも低くそうな印象でした。standaloneのSpark 1.6の環境で試してみよう。