Использование marimo с ClickHouse
marimo — это реактивный блокнот для Python с открытым исходным кодом и встроенной поддержкой SQL. Когда вы выполняете ячейку или взаимодействуете с элементом интерфейса, marimo автоматически выполняет затронутые ячейки (или помечает их как требующие обновления), поддерживая согласованность кода и результатов и предотвращая ошибки ещё до их появления. Каждый блокнот marimo хранится как чистый Python, может выполняться как скрипт и развёртываться как приложение.

1. Установите Marimo с поддержкой SQL
Должен открыться веб‑браузер с адресом localhost.
2. Подключение к ClickHouse.
Перейдите на панель источников данных слева в редакторе marimo и нажмите «Add database».

Вам будет предложено заполнить параметры подключения к базе данных.

После этого появится ячейка, которую можно выполнить для установления подключения.

3. Выполнение SQL-запросов
После настройки подключения вы можете создать новую SQL-ячейку и выбрать движок ClickHouse.

В этом руководстве мы будем использовать набор данных New York Taxi.

Теперь вы можете просматривать результаты во фрейме данных. Я хочу визуализировать самые дорогие высадки из заданной точки посадки. marimo предоставляет несколько UI-компонентов, которые помогут в этом. Я буду использовать выпадающий список (dropdown) для выбора локации и библиотеку Altair для построения графика.

Реактивная модель выполнения marimo распространяется и на SQL-запросы, поэтому изменения в вашем SQL автоматически запускают последующие вычисления для зависящих ячеек (или, при необходимости, помечают ячейки как неактуальные для ресурсоёмких вычислений). Поэтому график и таблица изменяются при обновлении запроса.
Вы также можете переключиться в режим App View, чтобы получить чистый интерфейс для исследования данных.
