1. MooseStack
  2. Table Engines
  3. SummingMergeTree

On this page

When to UseUsageConfiguration OptionsExample: Choosing Columns to SumSee Also

SummingMergeTree

SummingMergeTree automatically sums numeric columns when merging rows with the same ORDER BY key. It's a simpler alternative to AggregatingMergeTree when you only need sum aggregations.

When to Use

  • Simple counters and metrics (page views, clicks, totals)
  • Incrementing values by key
  • When you only need SUM operations (not MAX, MIN, etc.)

Usage

import { OlapTable, ClickHouseEngines } from "@514labs/moose-lib"; interface DailyMetrics {  date: Date;  page: string;  views: number;  clicks: number;  revenue: number;} const metrics = new OlapTable<DailyMetrics>("daily_metrics", {  engine: ClickHouseEngines.SummingMergeTree,  orderByFields: ["date", "page"]});

Configuration Options

OptionTypeDescription
orderByFieldsstring[]Columns that define the merge key (required)
columnsstring[]Optional allowlist of numeric columns to sum (defaults to all numeric columns)

Example: Choosing Columns to Sum

By default, all numeric columns are summed. You can restrict which columns are summed:

const metrics = new OlapTable<DailyMetrics>("daily_metrics", {  engine: ClickHouseEngines.SummingMergeTree,  orderByFields: ["date", "page"],  columns: ["views", "clicks"]  // Only sum these columns});
const metrics = new OlapTable<DailyMetrics>("daily_metrics", {  engine: ClickHouseEngines.SummingMergeTree,  orderByFields: ["date", "page"],  columns: ["views", "clicks"]  // Only sum these columns});
Sum-only limitation

SummingMergeTree only supports summation. For other aggregations (max, min, count distinct), use AggregatingMergeTree instead.

  • ClickHouse SummingMergeTree docs

See Also

  • AggregatingMergeTree — For non-sum aggregations / aggregate states
  • Aggregate Types — SimpleAggregateFunction and AggregateFunction modeling
  • Replicated Engines — For high availability
  • Overview
  • Quick Start
  • Templates / Examples
Fundamentals
  • Moose Runtime
  • MooseDev MCP
  • Data Modeling
MooseStack in your App
  • App / API frameworks
Modules
  • Moose OLAP
  • Moose Streaming
  • Moose Workflows
  • Moose APIs
Deployment & Lifecycle
  • Moose Migrate
  • Moose Deploy
Reference
  • API Reference
  • Data Types
  • Table Engines
    • MergeTree
    • ReplacingMergeTree
    • AggregatingMergeTree
    • SummingMergeTree
    • Replicated Engines
  • CLI
  • Configuration
  • Observability Metrics
  • Help
  • Changelog
Contribution
  • Documentation
  • Framework
FiveonefourFiveonefour
Fiveonefour Docs
MooseStackTemplates
Changelog
Source506