PyCon JP 2022

Pandas卒業?大規模データを様々なパッケージで高速処理してみる
2022/10/14 , pyconjp_5
言語: 日本語

Pandasは構造化・半構造化データを直観的に加工・解析できる優れたPythonパッケージであり、データ分析分野を中心に、初級者から上級者まで幅広く使われています。

しかし、Pandasはマルチコアや遅延処理をサポートしないため、大規模なデータほど十分なパフォーマンスが得られにくいです。1000万行を超えるデータでは特に顕著であり、「Pandas遅いなぁ」と感じた方も多いのではないでしょうか?

本トークでは、より高いパフォーマンスを目指しているDask、PySpark、Vaexなどのデータ処理パッケージを紹介し、内部アーキテクチャや特徴、実際の処理時間やメモリ使用量などを比較検証していきます。

「とりあえずPandasで。」というスタンスから一歩踏み出し、データ規模や加工・解析内容に適したパッケージを使い分けられるようになりましょう!


詳細

比較検証では、10億行超のオープンデータに対して様々な加工・分析・可視化処理を実行し、各パッケージのパフォーマンスや実装の複雑さを計測します。「少量データで軽く試してみた」だけでは見えてこない、リアルな性能差や思わぬ落とし穴を浮き彫りにすることで、各パッケージの実用性を評価することが本トークの目的です。

タイムテーブル

  • Pandasの紹介と課題(5分)
  • Dask、PySpark、Vaexの特徴や内部アーキテクチャ(5分)
  • 比較検証(15分)
  • 分析データ、処理内容の説明
  • 処理時間
  • メモリ使用量
  • 学習コスト
  • それでもPandasを使いたい場合の高速化Tips(4分)
  • まとめ(1分)

使用データ

各パッケージの公式ドキュメント