Blog

Posts in category: olap

Filtered by:olap
Clear filter
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.