Perspective — таблицы и графики для потоковых данных

★ 11.3K

Perspective — это открытая библиотека для построения интерактивных дата-гридов, сводных таблиц и графиков по большим и потоковым наборам данных в реальном времени. Берут, когда нужно встроить в веб-приложение или ноутбук живой дашборд с миллионами строк, когда данные меняются в реальном времени и таблица должна обновляться сама, когда аналитику требуется дать пользователям drag-and-drop настройку сводных таблиц без написания кода, или когда DuckDB/ClickHouse/PostgreSQL уже есть и хочется UI поверх без ETL. Ядро написано на C++ и компилируется в WebAssembly (включая 64-битный memory64 для датасетов свыше 4 ГБ в браузере), а также работает на Python (aiohttp, Starlette, Tornado), Node.js и Rust. Поддерживает Apache Arrow, CSV, JSON; 15+ типов WebGL-графиков; географические карты; React-биндинги и Jupyter-виджет через anywidget. Виртуальные серверы транслируют конфигурацию вью в нативные запросы к DuckDB, ClickHouse, PostgreSQL и Polars — данные не копируются. Клиент-серверная архитектура симметрична: один и тот же Client API подключается к движку in-process, в Web Worker или через WebSocket. Устанавливается через npm (@perspective-dev/client), PyPI (perspective-python) или crates.io. Направление — интерактивная визуализация и аналитика, а не пайплайны обработки данных.