Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】Notes from PyData Berlin 2025

2025年09月10日に「Dev.to」が公開したITニュース「Notes from PyData Berlin 2025」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

PyData Berlin 2025では、Pythonを使ったデータ分析と可視化の最新技術が集結。DuckDBやPolarsによる高速データ処理、AI向けデータ準備、SQLの新構文、アクセシビリティ対応など、実践的なツールやデータパイプライン構築のアプローチが多数紹介された。

出典: Notes from PyData Berlin 2025 | Dev.to公開日:

ITニュース解説

PyData Berlin 2025というデータサイエンスとPythonに関するイベントでは、様々な最新技術やアイデアが紹介された。システムエンジニアを目指す初心者にとっても、これらの内容は今後のIT業界で求められるスキルや知識のヒントとなるだろう。

まず「Beyond Linear Funnels: Visualizing Conditional User Journeys with Python」では、ユーザーの行動経路を可視化するツール「funnelius」が発表された。従来の直線的な顧客の行動分析では捉えきれない、ユーザーが特定の条件下でどのように行動を変えるかといった複雑な経路を視覚的に表現するプロジェクトである。このツールは、データ分析で広く使われる「pandas」、グラフ描画ツールの「Graphviz」、そしてWebアプリケーションを簡単に作成できる「Streamlit」といったPythonライブラリを組み合わせて作られている。ユーザーのIDと行動、その時刻といったシンプルなデータから、ユーザーの行動パターンを自動的に構築し、ビジネスの意思決定に役立つ洞察を提供する。

次に「Accessible Data Visualizations」の発表では、データ可視化におけるアクセシビリティの重要性が強調された。これは、視覚や聴覚などに障害を持つ人々も含め、誰もが情報にアクセスし、理解できるようにデザインすることである。特に欧州では、アクセシビリティに関する新しい法律(欧州アクセシビリティ法)や規格(EN 301 549)が導入されつつあり、この分野への関心が高まっている。講演では、色だけでなく模様(パターン)を併用することで、色覚に障害がある人にも情報を伝える工夫が紹介された。このようなデザインシステムは、多様なユーザーに対応するための重要な取り組みである。

「More than DataFrames: Data Pipelines with the Swiss Army Knife DuckDB」というワークショップでは、「DuckDB」という強力なデータ処理ツールが取り上げられた。DuckDBは、データを効率的に処理し、分析するためのインメモリデータベースであり、比較的小規模なデータセットであれば非常に高速に動作する特徴を持つ。このツールはPythonで直接操作でき、データパイプライン、つまりデータが取り込まれて加工され、最終的に利用されるまでの一連の流れを構築する際に役立つ。しかし、講演者はDuckDBがローカルマシン上でデータを処理するため、大量のデータを扱う際に、そのデータがどのようにマシンに読み込まれるのか、特にWebAssembly (WASM) サポートがどのように機能するのかについて疑問を呈している。WASMはWebブラウザで高性能なアプリケーションを動かす技術だが、それを使うにはまず全データをクライアント側が取得する必要があるのか、といった具体的な利用シナリオにおける課題が議論の対象となった。

「AI-Ready Data in Action: Powering Smarter Agents」というワークショップでは、AIの能力を最大限に引き出すためのデータ準備の重要性が語られた。「dlthub」と「lancedb」という二つのツールが紹介され、これらはAIが学習しやすい形にデータを整えたり、効率的に管理したりするためのものである。AI技術の進化に伴い、単にデータがあるだけでなく、AIが「理解できる」形でデータを提供することがますます重要になっている。

「Narwhals: enabling universal dataframe support」の基調講演では、「Narwhals」というパッケージが紹介された。これは、Pythonのデータフレームを扱う複数のライブラリ(例えばpandasやPolarsなど)が持つ異なる機能を、開発者が統一された方法で扱えるようにすることを目指すものである。つまり、さまざまなデータ処理ツールを使っても、一貫したコードで作業ができるようになり、開発効率が向上する。また、この講演ではオープンソースプロジェクトを運営するための貴重な知見も共有された。これには、明確な貢献ガイドの用意、行動規範の策定、緩やかなコミュニケーションの促進、貢献者への適切な権限付与、そして明確なビジョンとロードマップの共有などが含まれる。プロジェクトの精神を理解していれば、コミットは比較的自由に受け入れる一方で、リリースに関しては慎重に行うべきだという考え方が示された。このセッションでは、高速データ処理ライブラリとして注目されている「Polars」や「Ibis」についても言及があった。

「The Importance and Elegance of Polars Expressions」のセッションでは、「Polars」のデータ処理における「式(Expressions)」の概念が深く掘り下げられた。Polarsは、大規模なデータセットを高速かつ効率的に処理するために設計されたPythonライブラリであり、特に「式」を使うことで、複雑なデータ変換や集計を宣言的かつ高性能に記述できる。講演者は、これらの式を関数でラップし、カラム名をパラメータ化することで、コードのテスト容易性を向上させるアイデアを提案した。これにより、データ処理ロジックの信頼性が高まり、保守が容易になる。

「Building Reactive Data Apps with Shinylive and WebAssembly」では、「Shinylive」と「WebAssembly」を活用して、Webブラウザ上で動作するインタラクティブなデータアプリケーションを構築する興味深いアプローチが紹介された。Shinyliveは、Pythonで書かれたデータ分析アプリケーションをWebブラウザで直接実行できるようにするフレームワークである。WebAssemblyの技術と組み合わせることで、Pythonの実行環境ごとブラウザに配布し、ユーザーが手元のブラウザでデータアプリケーションを動かせるようになる。これにより、ユーザーはサーバーにデータをアップロードすることなく、自分のデータを安全に分析できるようになるメリットがある。しかし、このアプローチの大きな課題として、データソースへの認証、つまり、アプリケーションが安全にデータにアクセスするためのユーザー認証情報管理が挙げられた。ブラウザ上で全ての処理が完結する場合、機密性の高い認証情報を安全に扱うことが困難になるため、何らかのバックエンドシステムとの連携が必要となる可能性が指摘された。

「Deep Dive into the Synthetic Data SDK」というワークショップでは、「Synthetic Data SDK」というツールが紹介された。これは、既存のデータセットに基づいて「合成データ(Synthetic Data)」を生成するためのソフトウェア開発キットである。合成データとは、実際のデータと統計的特性は似ているが、個々の情報が本物ではない「フェイクデータ」である。プライバシー保護が厳しくなる中で、個人情報を含まないデータでテストや研究を行いたい場合に非常に有用である。このSDKは、データプライバシーを保護するための「差分プライバシー」の概念を取り入れたり、特定の条件に基づいてデータを生成したり、複数のテーブル間で整合性のある合成データを作成したり、さらにはバイアスのない「公平な合成データ」を生成する機能も提供する。データサイエンティストや研究者にとって、効率的かつ安全にデータを作成する強力なツールとなるだろう。

「Forget the Cloud: Building Lean Batch Pipelines from TCP Streams with Python and DuckDB」のセッションでは、クラウドサービスに頼りすぎない「リーン(無駄のない)」なデータ処理パイプラインの構築が提案された。講演者は、多くの企業が、実際には少量のデータしか扱っていないにもかかわらず、Databricksのような高性能なクラウドプラットフォームを過剰に利用している現状に疑問を投げかけた。日々のデータ量が100GB以下であれば、必ずしも大規模なクラウドインフラが必要なわけではないという考えのもと、PythonとDuckDBを使って、よりシンプルかつ効率的にデータストリームを処理する方法が紹介された。これは、コスト削減や運用負荷の軽減につながる可能性があり、dlthubのようなツールと組み合わせることで、さらに強力なソリューションとなるかもしれない。

「Bye-Bye Query Spaghetti: Write Queries You'll Actually Understand Using Pipelined SQL Syntax」は、従来のSQLの書き方を大きく変える「SQL Pipeline Syntax」が紹介された、特に実用的なセッションであった。従来のSQLでは、複雑なクエリを作成する際にサブクエリを多用したり、FROM句やJOIN句を先に書いたりするため、開発中やデバッグ中にコードの修正や実行順序の理解が難しいことがあった。SQL Pipeline Syntaxは、データをパイプラインのように順序立てて処理していく新しい書き方であり、最初のN行を常に有効なSQL文として実行できるという特徴がある。これにより、クエリの開発やデバッグが格段に容易になり、コードの可読性も向上する。例えば、FROM句から始まり、パイプ記号(|>)でJOIN、集計(AGGREGATE)、並べ替え(ORDER BY)といった操作を順番に記述していく形式は、データの流れを直感的に理解しやすくする。これは、SQLの重要な進化であると評価されている。

「Docling: Get your documents ready for gen AI」の講演では、「Docling」というツールの実用性が紹介された。このツールは、PDFやPowerPointファイルなど様々な形式のドキュメントから、生成系AIが扱いやすい形式(例えばMarkdown形式)のファイルを効率的に抽出する。AIがドキュメントの内容を正確に理解し、利用するためには、構造化されたきれいなデータ形式が必要となる。Doclingは、このデータ準備プロセスを簡素化し、AIへの情報入力の効率を大幅に向上させることを目指している。

最後に「Scraping urban mobility: analysis of Berlin carsharing」では、実際のデータ分析の事例として、ベルリンのカーシェアリングにおける車両の配置最適化の試みが紹介された。講演者は、公開されている情報などをスクレイピング(Webサイトからデータを自動的に収集すること)してデータを集め、それを分析することで、カーシェアリング車両の最適な配置場所や移動計画を見つけようとした。このプロジェクトは、期待通りの最適解を見つけるには至らなかったものの、実際の都市におけるモビリティ課題に対して、データ分析がいかに貢献できるかを示す良い例となった。より信頼性の高いデータがあれば、この分野で大きな成果を上げられる可能性が示唆された。

これらのセッションを通じて、Pythonがデータ分析、AI、Webアプリケーション開発、さらにはインフラに近いデータ処理まで、幅広い分野でいかに活用されているかが示された。システムエンジニアを目指す上で、これらの技術や考え方を学ぶことは、現代のIT業界で活躍するための強力な基礎となるだろう。