2020-07-31 にオンライン開催された Spark Meetup Tokyo #3 Online に参加した。
感想などメモしておく。
全体感
トピックとしては主に
- Spark 3.0
- Spark + AI Summit 2020
- Spark 周辺要素
といったところだろうか。
最近のコミュニティの動向や関心を日本語で聞くことができてよかった。
運営 & スピーカーの皆様、ありがとうございます。
発表
発表資料は公開されたら追加していく。
SPARK+AI Summit 2020 イベント概要
スピーカー: @tokyodataguy さん
- Summit は金融業界の参加者が増えているらしい
- Spark で最も使われている言語は Python とのことだったが、Databricks の notebook サービスの話だった
- プロダクションコードではまた違うのだろう
- Spark 3.0 の update をざっくりと
- Spark 周辺要素の話をざっくりと
- Koalas
- Delta Lake
- Redash
- MLflow
Introducing Koalas 1.0
スピーカー: @ueshin さん
- What’s Koalas
- open source の pure Python library
- pandas の API で Spark を動かせるようにする
- 小さいデータも大きなデータも同じように扱えるように
- 最近 v1.1 をリリース
- (個人的には pandas の API があまり好きではなく…)
SPARK+AI Summit 2020 のセッションハイライト
Spark + AI Summit 2020セッションのハイライト(Spark Meetup Tokyo #3 Online発表資料) from NTT DATA Technology & Innovation
スピーカー: @masaru_dobashi さん
- Summit のセッションから case study 的なセッションを2つピックアップ
- USCIS の例
- Lessons Learned from Modernizing USCIS Data Analytics Platform
- 古き良き Data Warehouse から Data Lake への移行
- injection には Kafka も利用
- 諸々気にせずに気軽にデータをストレージに置きたい
- Alibaba の例
- Spark Structured Streming の上に SQL-like なものを載せた?
- ストリームの mini-batch 処理の合間で compaction を行う (つらそう)
- スライド中の「パイプラインの途中でモダンな技術に流し込めるかどうか?」という言葉が印象的だった
- モダンなものに移行するとき現実的に重要
Spark v3.0の紹介
前半
スピーカー: @kiszk さん
- SQL の性能に関わる7大機能の話
- Query planの新しい表示方法
- Join hintsの強化
- Adaptive query execution
- Dynamic partitioning pruning
- nested column pruning & pushdown の強化
- Aggregation のコード生成の改良
- ScalaとJavaの新バージョンのサポート
- 実行計画が見やすくなるのは本当にうれしい
- 人がチューニングしていた部分が Adaptive Query Plan や Dynamic Partition Pruning で自動化されるのもうれしい
後半
Apache Spark 3.0新機能紹介 - 拡張機能やWebUI関連のアップデート(Spark Meetup Tokyo #3 Online) from NTT DATA Technology & Innovation
スピーカー: @raspberry1123 さん
- Accelarator Aware Scheduling
- Project Hydrogen
- プラグイン機能
- executor や driver の機能を user が拡張できる
- executor については Spark 2.4 からあったそうだが知らなかった…
- Structured Straming web UI
- ストリーム処理にはこういった chart が必要だと思う
SparkにPRを投げてみた
スピーカー: @moomindani さん
- スピーカーは AWS で Glue の開発をしている方
- Glue は Spark に強く依存しているため、機能追加にモチベーションがあったとのこと
- 私も投げてみたい!
LT: td-spark internals: AirframeでSparkの機能を拡張するテクニック
スピーカー: @taroleo さん
- Airframe とは Scala の application 開発用ツール群のようなもの?
- Spark の機能を拡張
LT: Spark 3.1 Feature Expectation
スピーカー: @maropu さん
- 新機能
- Support Filter Pushdown JSON
- JSON の読み取りが早くなる
- Better Handling for Node Shutdown
- node 離脱時にその node が保持する shuffle や cache の情報が失われていた
- 計画された node の離脱に対して shuffle や cache ブロックを別 node に委譲
- Support Filter Pushdown JSON
まとめ
どんどん便利になっていくなという印象。
手でパフォーマンスチューニングする要素はどんどん減っていくのだろう。
Delta Lake が盛り上がっているように感じた。
データレイクについて勉強しないと…