toolsmith

アップロードなし · すべてブラウザ内で処理

CSV・Parquet クエリ (SQL)

CSV や Parquet を開き、本物の SQL で照会します。DuckDB がこのタブの中で動くので、ファイルはアップロードされません。

ここに CSV か Parquet を置いてください

CSV · TSV · Parquet · JSON — 1 つずつ

ファイルはどこへ行きますか?

どこへも行きません。DuckDB にはファイルの参照だけを渡し、DuckDB がディスクから直接読みます。アップロードされるものはありません。降りてくるのは DuckDB エンジン自体で、公開 CDN から来ます — 向きが逆です。

なぜ先に 6MB ほど受信するのですか?

DuckDB は WebAssembly にコンパイルされた本物の分析用データベースだからです。展開すると 35MB、転送量では約 6MB です。ボタンを押したその瞬間に取得し、それ以前には取得しません。一度取得すればブラウザが保持します。

どれくらい大きなファイルまで扱えますか?

思ったより大きく扱えます。特に Parquet がそうです。ファイルを丸ごとメモリに載せず、クエリに必要な部分だけを読むため、広い Parquet で 2 列だけ見るクエリはほとんど何も読みません。CSV は先頭から走査するので遅くなります。

どんな SQL が書けますか?

DuckDB の方言で、PostgreSQL に近いものです。開いたファイルは `data` というテーブルになるので、`SELECT * FROM data LIMIT 50` が出発点です。結合・ウィンドウ関数・集計・CTE がすべて使えます。エラーは DuckDB の文言をそのまま表示するので、どこが誤りか分かります。

すべての行を表示しますか?

画面の表は 200 行で止まります。ページが耐えられる範囲だからで、止めたことも併記します。クエリ自体に制限はなく、ダウンロードする CSV には画面に出た行がすべて入ります。

ほかの道具

読んでおくと役に立つ記事