BI-движок на остатках токенов Cursor
Движок поддерживает не весь DAX, а рабочее подмножество языка: SUMMARIZECOLUMNS, CALCULATE, FILTER, итераторы и другие базовые конструкции. Разработка шла в Cursor Auto через TDD: тесты и результаты сравнивались с Power BI, а ИИ сам предлагал новые кейсы, исправлял расхождения и доводил сложные DAX-запросы до совпадения.
Вторая часть эксперимента — не просто движок, а другой способ собирать BI-отчеты. Автор встроил выполнение DAX в Markdown-документы, чтобы объединять текстовое описание, расчеты и графики в одном отчете, ближе к логике MathCad, а не к набору отдельных дашбордов.
Desktop-приложение сделано на Avalonia: пользователь выбирает рабочую папку, данные импортируются из CSV, TOM-модель со связями хранится в JSON, поддерживаются только Single-связи, а ER-диаграмма выводится в Mermaid-файл schema.md и в UI. Прототип пока не оптимизирован и проверялся на таблицах меньше 10 тысяч строк, но считает, не падает и сходится с Power BI даже на достаточно сложных кейсах.
Коротко
- Прототип DAX-движка написан на C# и работает без привязки к Windows, Power BI Desktop, Tabular Server и облачным сервисам.
- Cursor Auto использовался не только для генерации кода, но и для добавления тестов, поиска ошибок и сверки поведения с Power BI.
- DAX-запросы можно выполнять внутри Markdown-отчетов, объединяя расчеты, графики и текстовое описание в одном документе.
- Desktop-приложение импортирует CSV, хранит TOM-модель в JSON, строит ER-диаграмму в Mermaid и поддерживает только Single-связи.
- Проверка шла на небольших данных до 10 тысяч строк: движок пока медленный, но стабильно сходится с Power BI на тестовых кейсах.
FAQ
Зачем делать отдельный DAX-движок, если уже есть Power BI и Tabular Server?
Цель прототипа — снизить зависимость от Windows и Power BI-окружения. Такой движок можно запускать на разных ОС без Power BI Desktop, серверов и виртуальных машин.
Чем Markdown-отчеты в этом эксперименте отличаются от обычных BI-дашбордов?
В Markdown можно совмещать текстовое объяснение, шаги анализа, DAX-запросы и результаты расчетов. Автор рассматривает это как формат для глубокой аналитики, а не как замену всем BI-дашбордам.
Насколько готов этот BI-движок к практическому использованию?
Это прототип: он поддерживает только часть DAX, работает с CSV и Single-связями, а производительность пока не оптимизирована. Но на тестовых примерах результаты совпадают с Power BI.
Читайте также
Сепаратор для логов: как logzip сжимает логи для контекста LLM без потери читаемости
Как писать промпты для разработки: опыт, который экономит часы
Cursor как общая среда для заказчика и разработчика
Разработка фронтенда интернет-магазина через Qwen 3.6 Plus и Qwen CLI
Claude пишет — бот работает: полный цикл создания Telegram-бота
- Markdown-отчеты как формат глубокой аналитики: DAX-запросы можно встроить в Markdown-документы, чтобы объединять текстовое объяснение, расчеты и результаты в одном отчете. Такой подход полезен для аналитических разборов, где важна не только визуализация, но и последовательное описание задачи, логики расчета и вывода.
[BI и аналитическая отчетность]
Зарегистрированные пользователи видят только два тезиса.
Зарегистрироваться
Автор на остатках месячных токенов Cursor собрал прототип DAX-движка на C# — простой аналог VertiPaq, который работает кроссплатформенно и не требует Windows, Power BI Desktop, Tabular Server или облака.