RuleGo RuleGo
🏠首页
  • 快速入门
  • 规则链
  • 标准组件
  • 扩展组件
  • 自定义组件
  • 可视化
  • RuleGo-Server
  • AOP
  • 触发器
  • 高级主题
  • 性能
  • 标准组件
  • 扩展组件
  • 自定义组件
  • 流式计算
  • 组件市场
  • 概述
  • 快速入门
  • 路由
  • DSL
  • API
  • Options
  • 组件
🔥编辑器 (opens new window)
  • 可视化编辑器 (opens new window)
  • RuleGo-Server (opens new window)
  • 🌊StreamSQL
  • 🤖智能体框架
  • 🦀TPCLAW 智能体平台 (opens new window)
  • ❓问答

    • FAQ
💖支持
👥加入社区
  • Github (opens new window)
  • Gitee (opens new window)
  • GitCode (opens new window)
  • 更新日志 (opens new window)
  • English
  • 简体中文
🏠首页
  • 快速入门
  • 规则链
  • 标准组件
  • 扩展组件
  • 自定义组件
  • 可视化
  • RuleGo-Server
  • AOP
  • 触发器
  • 高级主题
  • 性能
  • 标准组件
  • 扩展组件
  • 自定义组件
  • 流式计算
  • 组件市场
  • 概述
  • 快速入门
  • 路由
  • DSL
  • API
  • Options
  • 组件
🔥编辑器 (opens new window)
  • 可视化编辑器 (opens new window)
  • RuleGo-Server (opens new window)
  • 🌊StreamSQL
  • 🤖智能体框架
  • 🦀TPCLAW 智能体平台 (opens new window)
  • ❓问答

    • FAQ
💖支持
👥加入社区
  • Github (opens new window)
  • Gitee (opens new window)
  • GitCode (opens new window)
  • 更新日志 (opens new window)
  • English
  • 简体中文

广告采用随机轮播方式显示 ❤️成为赞助商
  • 快速入门

  • 规则链

  • 标准组件

  • 扩展组件

    • 扩展组件概述
    • 过滤器

    • 动作

    • 转换器

    • 外部的

    • ai

    • CI

    • IoT

    • 流式计算

      • 流式计算
        • 组件列表
          • streamTransform
          • streamAggregator
        • 快速开始
          • 1. 安装依赖
          • 2. 注册组件
          • 3. 使用示例
          • 数据转换示例
          • 数据聚合示例
          • 变化检测示例(分析函数)
        • 应用场景
          • IoT数据处理
          • 实时监控
          • 数据分析
      • 流聚合器
      • 流转换器
    • 文件

  • 自定义组件

  • 组件市场

  • 可视化

  • AOP

  • 触发器

  • 高级主题

  • 智能体框架

  • RuleGo-Server

  • 问题

目录

流式计算

# 流式计算组件

RuleGo 提供了基于 StreamSQL 引擎的流式计算组件,支持使用SQL语法进行实时数据处理。

# 组件列表

# streamTransform

节点类型: x/streamTransform

流转换器组件,逐条同步处理非聚合 SQL 查询(走直连路径,状态跨事件保留),支持:

  • 数据过滤、字段选择、重命名和计算
  • 条件过滤和数据验证
  • 单条和批量数据处理
  • 分析函数:lag/latest、had_changed/changed_col/changed_cols、acc_*(变化检测、生命周期累计)
  • 流-表 JOIN:用元数据表富化流行
  • 60+ 内置函数

适用场景: 实时数据清洗、格式转换、变化检测(CDC)、生命周期累计

# streamAggregator

节点类型: x/streamAggregator

流聚合器组件,处理带窗口/分组的聚合 SQL 查询(异步触发,聚合结果走 window_event 链),支持:

  • 窗口聚合(滚动、滑动、计数、会话、全局窗口)
  • 分组聚合和多维度统计
  • 聚合函数(COUNT、SUM、AVG、MAX、MIN 等)
  • HAVING 过滤聚合结果;流-表 JOIN 富化后再聚合
  • 窗口内可用分析函数对窗口输出做变化检测/回溯/累计

适用场景: 实时统计分析、监控报警、持续超阈值检测、数据汇总

如何选择

  • 逐条、立刻出结果(过滤/转换/变化检测/累计)→ streamTransform
  • 攒一批、窗口触发再出结果(统计/持续检测)→ streamAggregator 分析函数不带窗口时进 transform,带窗口(对窗口输出求值)时进 aggregator。

# 快速开始

# 1. 安装依赖

go get github.com/rulego/rulego-components
1

# 2. 注册组件

import _ "github.com/rulego/rulego-components/stats/streamsql"

1
2

# 3. 使用示例

# 数据转换示例

{
  "id": "transform1",
  "type": "x/streamTransform",
  "name": "温度转换",
  "configuration": {
    "sql": "SELECT deviceId, temperature, temperature * 1.8 + 32 as temp_fahrenheit FROM stream WHERE temperature > 0"
  }
}
1
2
3
4
5
6
7
8

# 数据聚合示例

{
  "id": "aggregator1",
  "type": "x/streamAggregator",
  "name": "温度统计",
  "configuration": {
    "sql": "SELECT deviceId, AVG(temperature) as avg_temp, COUNT(*) as count FROM stream GROUP BY deviceId, TumblingWindow('5m')"
  }
}
1
2
3
4
5
6
7
8

# 变化检测示例(分析函数)

{
  "id": "cdc1",
  "type": "x/streamTransform",
  "name": "电流突变检测",
  "configuration": {
    "sql": "SELECT current, deviceId FROM stream WHERE current > 300 AND lag(current) OVER (PARTITION BY deviceId) < 300"
  }
}
1
2
3
4
5
6
7
8

# 应用场景

# IoT数据处理

  • 传感器数据清洗和格式化
  • 实时温度、湿度等指标监控
  • 设备状态统计和报警

# 实时监控

  • 系统性能指标聚合
  • 异常检测和告警
  • 实时仪表板数据处理

# 数据分析

  • 流式数据预处理
  • 实时统计计算
  • 多维度数据分析
在 GitHub 上编辑此页 (opens new window)
上次更新: 2026/07/11, 11:54:34
串口通信
流聚合器

← 串口通信 流聚合器→

Theme by Vdoing | Copyright © 2023-2026 RuleGo Team | Apache 2.0 License

  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式