Ключевые возможности Moose OLAP
- Схемы как код: Описывайте таблицы ClickHouse на TypeScript или Python с типобезопасностью и автодополнением в IDE
- Типобезопасные запросы: Пишите SQL-запросы с проверкой типов и поддержкой автодополнения
- Локальная разработка: Разрабатывайте и тестируйте с локальными экземплярами ClickHouse, не затрагивая продакшн
- Управление миграциями: Версионируйте изменения в схеме и управляйте миграциями через код
- Стриминг в реальном времени: Встроенная поддержка работы ClickHouse в связке с Kafka или Redpanda для потокового приёма данных
- REST API: Легко создавайте полностью документированные REST API поверх таблиц и представлений ClickHouse
Начало работы за 5 минут
Предварительные требования
- Node.js 20+ или Python 3.12+ — требуется для разработки на TypeScript или Python
- Docker Desktop — для локальной среды разработки
- macOS/Linux — Windows поддерживается через WSL2
1
2
Настройте проект
Вариант A: используйте существующее развертывание ClickHouse
Важно: Ваш ClickHouse в продакшн останется нетронутым. Эта команда лишь инициализирует новый проект Moose OLAP с моделями данных, созданными на основе ваших таблиц ClickHouse.Вариант B: используйте Песочницу ClickHouse
ClickHouse ещё не запущен? Используйте Песочницу ClickHouse, чтобы попробовать Moose OLAP!3
4
Изучите сгенерированные модели
Moose CLI автоматически генерирует интерфейсы TypeScript или модели Pydantic для Python на основе существующих таблиц ClickHouse.Новые модели данных можно посмотреть в файлеapp/index.ts.5
Начните разработку
Запустите dev-сервер, чтобы поднять локальный экземпляр ClickHouse, в котором все ваши таблицы из продакшн будут автоматически воссозданы на основе определений в коде:6
7
Разработка с Moose OLAP
Теперь, когда ваши таблицы определены в коде, вы получаете те же преимущества, что и при работе с ORM-моделями данных в веб-приложениях: типобезопасность и автодополнение при создании API и materialized view поверх аналитических данных. В качестве следующего шага можно попробовать:- Создать REST API с помощью Moose API
- Выполнять приём или преобразование данных с помощью Moose Workflows или Moose Streaming
- Изучить переход в продакшн с Moose Build и Moose Migrate
Получите помощь и оставайтесь на связи
- Эталонное приложение: Ознакомьтесь с эталонным приложением с открытым исходным кодом Area Code — стартовым репозиторием со всеми необходимыми компонентами для многофункционального приложения корпоративного уровня, которому требуется специализированная инфраструктура. Доступны два примера приложений: User Facing Analytics и Operational Data Warehouse.
- Сообщество Slack: Свяжитесь с сопровождающими Moose Stack в Slack, чтобы получить поддержку и поделиться отзывом
- Смотрите обучающие материалы: Видеоуроки, демо и подробные обзоры возможностей Moose Stack на YouTube
- Участвуйте в разработке: Ознакомьтесь с кодом, внесите свой вклад в Moose Stack и сообщайте о проблемах на GitHub