Redis Streaming
首页
快速开始
  • 核心 API
  • Runtime
  • Config
  • State
  • Checkpoint
  • Watermark
  • Window
  • Source & Sink
  • Reliability
  • Registry
  • MQ
  • 架构设计
  • Exactly-Once
  • MQ 设计
  • Registry 设计
  • 部署指南
  • 性能调优
  • 故障排查
GitHub
首页
快速开始
  • 核心 API
  • Runtime
  • Config
  • State
  • Checkpoint
  • Watermark
  • Window
  • Source & Sink
  • Reliability
  • Registry
  • MQ
  • 架构设计
  • Exactly-Once
  • MQ 设计
  • Registry 设计
  • 部署指南
  • 性能调优
  • 故障排查
GitHub
  • 快速开始

    • 5分钟上手
    • Spring Boot 集成
  • 核心概念

    • 架构概述
    • 核心 API
    • 运行时环境
  • 基础设施模块

    • Config 配置中心
    • Registry 服务注册
    • MQ 消息队列
  • 流处理核心

    • State 状态管理
    • Checkpoint 检查点
    • Watermark 水位线
    • Window 窗口
  • 数据集成

    • Source & Sink
    • CDC 变更捕获
    • Aggregation 聚合
    • Table 表操作
    • Join 流连接
  • 可靠性

    • Reliability 组件
    • Metrics 监控
  • 设计文档

    • Exactly-Once 语义
    • MQ 设计
    • Registry 设计
  • 运维

    • 部署指南
    • 性能调优
    • 故障排查
    • CI/CD
  • 开发

    • 开发指南
    • 测试指南
    • 发布流程

Aggregation

Module: aggregation/

Window aggregations (PV/UV, TopK).

Scope

  • Redis-backed window aggregation utilities(计数/最值/TopK/PV/UV 等)
  • 说明:该模块是独立聚合引擎(非 runtime 的 WindowedStream 执行器)

Key Classes

  • WindowAggregator / TimeWindow / TumblingWindow / SlidingWindow
  • aggregation.functions.*(CountFunction, SumFunction, MinFunction, ...)
  • aggregation.analytics.*(PVCounter, TopKAnalyzer)

Minimal Sample (WindowAggregator)

import io.github.cuihairu.redis.streaming.aggregation.TumblingWindow;
import io.github.cuihairu.redis.streaming.aggregation.WindowAggregator;
import io.github.cuihairu.redis.streaming.aggregation.functions.CountFunction;

// RedissonClient redisson = ... (see State.md)
WindowAggregator agg = new WindowAggregator(redisson, "demo:agg");
agg.registerFunction("COUNT", CountFunction.getInstance());

var win = TumblingWindow.ofSeconds(10);
var now = java.time.Instant.now();
agg.addValue(win, "events", "id-1", now);
Long cnt = agg.getAggregatedResult(win, "events", "COUNT", now);

References

  • Design.md
Edit this page
最近更新: 2026/1/1 13:26
Contributors: cuihairu
Prev
CDC 变更捕获
Next
Table 表操作