Blog

Stay up to date with the latest news, updates, and insights from our team.

black and white image on blurred code with title on top: Just OLAP it (Python Edition): Derive Moose OLAP models  from SQLModel

OLAP, Product, Python

Just OLAP It (Python Edition): Derive Moose OLAP Models from SQLModel

This hands-on walkthrough shows how to derive Moose OLAP models directly from Python’s SQLModel. You’ll learn how to map your OLTP schema to ClickHouse through MooseStack — defining OLTP models, mirroring them into Pydantic payloads, layering in CDC metadata, and declaring OLAP tables. While TypeScript automates much of this flow, Python requires explicit type bridging. This post highlights what’s manual today, where automation could fit, and how to keep your OLTP and OLAP layers in sync.

black and white lines with the white title on top: Just OLAP it: derive an OLAP data model from your OLTP ORM

OLAP, OLTP, ORM

Just OLAP it: derive an OLAP data model from your OLTP ORM

Most developers love their ORMs — but what happens when you move from transactional (OLTP) to analytical (OLAP) workloads? This post explains how to reuse your existing TypeScript ORM types (from Drizzle, Prisma, or TypeORM) to build OLAP-ready schemas in ClickHouse using MooseOLAP. You’ll learn how to make implicit OLTP assumptions explicit, add OLAP-specific semantics like strict types and partitioning, and keep type safety while achieving true analytics performance.

A dark, blurred motion photo background featuring someone running with a box in their hands, overlaid with white text that reads: “Code first CDC from Postgres to ClickHouse with Debezium, Redpanda, and MooseStack".

OLAP, OLTP, ClickHouse, Redpanda

Code first CDC from Postgres to ClickHouse with Debezium, Redpanda, and MooseStack

Learn how to keep OLTP fast while streaming changes to ClickHouse for lightning-quick analytics. This code-first guide uses Debezium, Redpanda, and MooseStack to model CDC, transforms, and OLAP tables you can spin up locally in seconds.

black and white image on stairs white title on it in white: ClickHouse table engines and CDC

OLAP, ClickHouse

ClickHouse table engines and CDC

OLAP databases don’t update — they merge. When streaming CDC data into ClickHouse, every change is an insert. The table engine you choose defines how those inserts turn into a correct, queryable view of your data.

black and white image of patterns with title of the article on top: Optimizing writes to OLAP using buffers

OLAP, ClickHouse, Product

Optimizing writes to OLAP using buffers

Learn how insert patterns differ between OLTP and OLAP databases — and how ClickHouse and MooseStack can help you optimize for each. From batching strategies to streaming buffers, discover practical heuristics to balance performance, freshness, and resilience.

black and white image of two shadows with the title of the article written in white : OLAP on Tap:  Freddy v JSON (the new JSON type)

OLAP, ClickHouse

OLAP on Tap: Freddy v JSON (the new JSON type)

ClickHouse’s new JSON column type bridges the gap between flexibility and OLAP efficiency. This post explores how explicit and implicit subcolumns let you query nested data without sacrificing performance — and why understanding how ClickHouse handles NULLs is key to modeling real-world JSON.

black and white image of a dog with sunglasses with the title of the article on top "OLAP on Tap:  Much Ado About Nulling"

OLAP, ClickHouse

OLAP on Tap: Much Ado About Nulling

When working with OLTP databases, NULL values are a flexible way to represent unknown data. But in the world of OLAP — where performance depends on columnar efficiency and compression — NULL can become an expensive mistake. In this post, we unpack why NULLs slow down analytical workloads, how ClickHouse handles them internally, and what patterns (like sensible defaults or sentinel values) you can use instead.

Birds flying in black and white with title written on top: OLAP On Tap:  Untangle your bird's nest(edness)  (or, modeling messy data for OLAP)

OLAP, ClickHouse

OLAP On Tap: Untangle your bird's nest(edness) (or, modeling messy data for OLAP)

Nested and irregular data structures are powerful for ingestion—but brutal for analytics. This article explores why JSON-heavy and shape-shifting data patterns complicate OLAP performance, and how to tame them with schema-on-write strategies, materialized views, and ClickHouse tricks. Whether you’re modeling logs, telemetry, or e-commerce data, you’ll learn how to keep the elegance of nested data without losing analytical speed.

image of black and white photo of people drinking beers with title of the article on top

OLAP, ClickHouse

OLAP on Tap: The Art of Letting Go (of Normalization)

This article explains how OLAP databases like ClickHouse and DuckDB differ fundamentally from OLTP systems in their design and purpose. It dives into how columnar storage and analytical workloads reshape schema design, comparing traditional star schemas with modern wide, denormalized tables. You’ll learn why storage duplication is no longer the enemy, why joins slow down analytics, and how schema design in OLAP effectively is the query plan.

Black and white image with title on top: Olap on tap: ORDER BY defines your performance

OLAP, ClickHouse

OLAP on Tap: ORDER BY defines your performance

This post explores why ORDER BY is a critical performance factor in OLAP databases like ClickHouse. Using clear analogies (like grocery store layouts vs. maps) and real-world benchmarks (aircraft telemetry data from ADSB.LOL), it shows how ORDER BY improves efficiency compared to OLTP indices. You’ll also learn practical heuristics for choosing the right fields — from low-cardinality booleans to time-based clustering — and how they impact ingestion, compression, and query speed.

black and white image of a beer with title of the article on top OLAP on Tap 🍻: High time for low cardinality

OLAP, ClickHouse

OLAP on Tap: High time for low cardinality

Cardinality plays a critical role in OLAP database performance, especially when balancing compression, encoding, and query efficiency. This guide breaks down cardinality types with practical examples, including LowCardinality wrappers, enums, and heuristics for choosing the right column types. Perfect for engineers optimizing high-volume analytics workloads.

black and white image with a visual of bubbles from a beer. With the title of the article " OLAP on Tap: You're just my type"

ClickHouse, OLAP

OLAP on Tap: You're just my type

The article talks about why typing matters in OLAP systems like ClickHouse, covering efficient type choices, when to use LowCardinality, and the tradeoffs of strict schema design, with a guide for AI copilots and links to best practices.

Abstract black and white with the title of the blog post Reference apps by Fiveonefour: The learning behind creating Area Code

User-facing analytics, Product, Developer tools

Reference apps by Fiveonefour: The learning behind creating Area Code

At Fiveonefour, we built Area Code—a reference application that demonstrates how to add an analytical layer to a transactional system using our OSS framework, MooseStack. This blog introduces why we created Area Code, the challenges it addresses, and the insights we’ve gained from building it. It’s the first in a series of articles sharing our learnings with the community.

black and white image with white text showing the article title. You Showed Up: What We Learned from Asking “Does OLAP Need an ORM?”

ClickHouse, Product, Educational, Community

You Showed Up: What We Learned from Asking “Does OLAP Need an ORM?”

We asked the community if OLAP needs ORM-like DX. The consensus: keep SQL first-class, add type-safety and contracts, and build toward a semantic layer. Here are the sharpest arguments—and what we’re building next.

Motion image with the title "Evolving the ORM for the Analytical Database"

ClickHouse, Data Architecture, Developer tools

Evolving the ORM for the Analytical Database

Traditional ORMs break when applied to OLAP databases. We worked with ClickHouse to explore why columnar stores require a new, OLAP-native approach to developer abstractions

Black and white image of abstract visual with the blog title: Prototyping a Connector Factory: Build first to learn, abstract later to scale

Product, Educational, Software Architecture

Prototyping a Connector Factory: Build first to learn, abstract later to scale

The Connector Factory reimagines data integrations by combining clear specifications, standardized scaffolding, and AI-powered agents to deliver production-ready connectors in hours instead of weeks. By turning every new connector into a learning loop, the system continuously improves—making integrations faster, more reliable, and fully open source for developers to use or extend.

Image of servers with the title of the article PostgreSQL vs ClickHouse: What I Learned From My First Database Benchmark

ClickHouse, Educational

PostgreSQL vs ClickHouse: What I Learned From My First Database Benchmark

Joj benchmarked PostgreSQL vs ClickHouse on 10M rows to see how an AI agent might explore data. The test revealed when ClickHouse pulls ahead, how one schema change delivered a 50× speedup, and why LLMs make these optimizations easier than ever.

black and white blurred image of someone running with the blog post title: Introducing Lifecycle Management: Taking Control of Your Database Evolution

Update, New feature

Introducing Lifecycle Management: Taking Control of Your Database Evolution

Lifecycle Management gives you fine‑grained control over how Moose applies schema changes as your code evolves—keep automation in dev, add deletion‑safe guardrails in prod, or integrate with CDC/external databases for full control. Choose per resource—Fully Managed, Deletion Protected, or Externally Managed—across tables, streams, and ingestion pipelines. Available now in v0.4.320+; docs: moose.514.dev/moose/building/lifecycle.

OG Image of someone workingon a computer with the title of the blog post" Fixing Ctrl+C in terminal apps: Child Process Management"

Product, Update

Fixing Ctrl+C in Rust Terminal Apps: Child Process Management

Lessons we learned from Moose CLI to keep terminals clean after Ctrl+C—no more garbled prompts or lingering processes.

ClickHouse x Fiveonefour

ClickHouse, Educational, AI

ClickHouse x Fiveonefour

ClickHouse is a blazingly fast open source analytical database. We love Clickhouse here at Fiveonefour, and we’re on a mission to make Clickhouse accessible to every developer. If you’re a developer building on ClickHouse, you’ve come to the right place ;) Read on to learn about Fiveonefour's dev tool stack to enable Clickhouse developers...

Getting DDL Dependencies in order with Moose & SQL

Product

Getting DDL Dependencies in order with Moose & SQL

If you've worked with SQL databases like ClickHouse, you know that changing one object—say, a table—can have ripple effects on dependent objects like Materialized Views (MVs) or other views. Applying these Data Definition Language (DDL) changes in the wrong order often leads to errors and headaches. This post explains how Moose handles these SQL dependencies to make your infrastructure updates reliable during development with moose dev.

Real-time Github Analytics with ClickHouse, Redpanda

Next.js, Educational, Templates

Real-time Github Analytics with ClickHouse, Redpanda

Build a real-time GitHub analytics dashboard in a few hundred lines with Moose. Learn to ingest and enrich GitHub data, expose a type-safe API, and deploy a production-ready stack—all with minimal code and maximum speed. Perfect for tracking open-source trends or launching your own analytics project.

Medallion Architectures Promise Quality Data Products, AI Agents Can Deliver on That Promise

AI, Data Architecture

Medallion Architectures Promise Quality Data Products, AI Agents Can Deliver on That Promise

Medallion architectures aim to deliver high-quality data products through distinct quality levels but face scalability issues as demand for these products increases. AI agents can address this by automating data quality improvement, speeding up the process from bronze to gold levels while maintaining high standards. Combined with federated data architectures and scalable frameworks, AI agents can significantly enhance data engineering capacity and deliver high-quality data at scale.

cover image for MCP Economy blog post

AI

The MCP Economy

The blog explores how Model Context Protocols (MCPs) are emerging as the next evolution beyond traditional APIs, enabling LLMs to interact with systems in flexible, agent-native ways. Just as APIs turned complex backend tasks into simple programmatic calls for apps, MCPs abstract complexity for LLMs, but require handling non-determinism and reasoning, not just static tasks. This shift could create a new wave of "API winners" in domains previously considered too human-centric to automate.

Goodreads Book Review Dataset Template

Templates, Product, AI

Goodreads Book Review Dataset Template

The blog post discusses how the author created a template to ingest Goodreads data from Kaggle to demonstrate the capabilities of their advanced AI tools, including data ingestion and analysis. It provides a detailed guide on how to set up the tools, ingest the dataset, explore the data with AI, and even productionize results .

Aircraft Transponder (ADS-B) Data Template and Aurora MCP Analytics Engineer

Educational, Data Products, AI, Templates

Aircraft Transponder (ADS-B) Data Template and Aurora MCP Analytics Engineer

This blog walks through setting up a Moose project to track military aircraft data using a Moose / Aurora ADS-B template, with a focus on leveraging Aurora MCP tools for data exploration and productionizing APIs. It provides a step-by-step guide to exploring and analyzing transponder data, using Claude Desktop and Cursor for insightful queries and visualizations.

MCP Configuration Management by CLI

Product, AI

MCP Configuration Management by CLI

The blog post discusses the challenges of using MCPs in different clients, particularly Claude Desktop and Cursor, with frustrations around config JSON setup, updates, and PATH inheritance.

F45 Training Powers User-Facing Analytics with Fiveonefour

Case studies, User-facing analytics, Data Intensive Features

F45 Training Powers User-Facing Analytics with Fiveonefour

Discover how F45 Training, the global boutique fitness franchise, rolled out user-facing analytics 10x faster and 50% cheaper with Fiveonefour, unlocking an immersive mobile app experience for their Lionheart biometrics and connected-fitness users.

Introducing Aurora

AI, Educational, Announcements, Product

Introducing Aurora Pre-Alpha Preview: API to ClickHouse demo

Download and try out Aurora's first workflow: getting data from an API into your clickhouse database!

Data Mesh and Data Autonomy

Educational, Observability, Data Products

Data Mesh and Data Autonomy

A hands-on approach to domain-driven data products, automated data pipelines, and scalable governance.

Whoop There it is — Data Intensive Overhaul of Whoop

Observability

Whoop There it is — Data Intensive Overhaul of Whoop

We Built our Own Product Analytics with Moose (pt. 1)

Data Products

We Built our Own Product Analytics with Moose (pt. 1)

Welcome to the OG crew

Announcements

Welcome to the OG crew

Letting the Moose Loose

Announcements, Product

Letting the Moose Loose