Rust

A collection of 3 posts
PandasユーザーのためのPolars入門 ― 合成データで体感するLazy実行・最適化・SQLサポート
IT

PandasユーザーのためのPolars入門 ― 合成データで体感するLazy実行・最適化・SQLサポート

近年、データ処理の高速化や大規模データ対応を目的として、Polars へ移行を検討するケースが増えています。 Polarsは単なる「速いPandas」ではありません。 設計思想そのものが異なり、クエリエンジン型のデータフレームライブラリといえます。 本記事では、Pandas経験者を対象に: * PandasとPolarsの設計思想の違い * Lazy実行と最適化の仕組み * Streamingによるメモリ効率 * SQLサポート * 実際に動かせるサンプルコード を、サンプルデータを作成し、そのデータを使って解説します。 外部データのダウンロードは不要です。 すべてこの記事内のコードだけで再現できます。 環境準備 python -m venv .venv source .venv/bin/activate pip install -U polars pandas pyarrow numpy デモ用データを生成する 今回は架空のEC購買ログを生成します。 * 実在企業・実在人物のデータは含みません * ランダム生成なので著作権の問題はありません
6 min read
【Polars】Parquet(パーケット)形式とは?
IT

【Polars】Parquet(パーケット)形式とは?

Parquet(Apache Parquet)は、 列指向(columnar)で保存されるデータファイル形式 です。 主にビッグデータ処理の世界で広く使われています。 * Apache Arrow系 * Spark * DuckDB * Polars * BigQuery * Snowflake など、多くのデータ基盤で採用されています。 CSVとの違い CSV(行指向) id,name,age 1,Alice,30 2,Bob,25 CSVは「行」単位で保存されています。 * 1行ずつ並んでいる * 人間が読める * シンプル * でも大規模処理には不向き Parquet(列指向) イメージ: id列: 1,2,3,4,... name列: Alice,Bob,... age列: 30,
1 min read