ClickHouseとmarimoの使用
marimo は、SQLが組み込まれたオープンソースのリアクティブノートブックで、Python用です。セルを実行したりUI要素と対話したりすると、marimoは影響を受けたセルを自動的に実行し(またはそれらを古くなったとマークし)、コードと出力を一貫性のあるものに保ち、バグが発生する前に防ぎます。すべてのmarimoノートブックは純粋なPythonとして保存され、スクリプトとして実行可能で、アプリとしてデプロイ可能です。

1. SQLサポート付きのmarimoをインストールする
これにより、localhostで動作しているWebブラウザが開かれるはずです。
2. ClickHouseに接続する
marimoエディタの左側のデータソースパネルに移動し、「データベースを追加」をクリックします。

データベースの詳細を入力するように求められます。

次に、接続を確立するために実行できるセルがあります。

3. SQLを実行する
接続を設定したら、新しいSQLセルを作成し、clickhouseエンジンを選択できます。

このガイドでは、ニューヨークタクシーデータセットを使用します。

これで、データフレーム内の結果を表示できるようになりました。指定したピックアップ位置からの最も高価なドロップオフを可視化したいと思います。marimoは、これを助けるためのいくつかのUIコンポーネントを提供します。私は、場所を選択するためにドロップダウンと、チャートを作成するためにaltairを使用します。

marimoのリアクティブ実行モデルはSQLクエリにまで拡張されるため、SQLの変更は依存セルの下流計算を自動的にトリガーします(またはオプションで計算が高価なためセルを古くなったとマークします)。したがって、クエリを更新するとチャートとテーブルが変わります。
データを探索するためのクリーンなインターフェースを持つApp Viewに切り替えることもできます。
