以前の記事では、Pandasより高速なDataFrameライブラリとしてPolarsを取り上げました。
Polarsは単なる「高速なPandas」ではなく、Lazy実行やクエリ最適化を備えた、非常に強力なデータ処理ライブラリです。
今回は、会社のシステム研修で紹介されて気になった DuckDB を調べてみました。
DuckDBもPolarsと同じくCSVやParquetなどの大量データを高速に扱えるツールですが、Polarsとの大きな違いがあります。
Polarsが、
PythonからDataFrameを操作する
ことを中心としたツールなのに対し、DuckDBは、
SQLを使ってデータを分析する
ことを中心とした分析用データベースです。
さらに、DuckDBをブラウザから利用できる Duck-UI というWebアプリケーションがあります。
Duck-UIをDockerで社内サーバーに用意すれば、社員のPCにPythonやDuckDBをインストールしなくても、
1. ブラウザを開く
2. 自分のPCにあるCSVを読み込む
3. SQLを書く
4. 集計結果を