mirror of
https://gitee.com/rulego/streamsql.git
synced 2025-07-01 22:01:53 +00:00
StreamSQL 非聚合场景使用示例
本示例展示了StreamSQL在非聚合场景中的各种应用,包括实时数据转换、过滤、清洗等功能。
运行示例
cd examples/non-aggregation
go run main.go
场景说明
1. 实时数据清洗和标准化
场景描述: 对输入的脏数据进行清洗和标准化处理,包括:
- 空值处理(COALESCE)
- 字符串规范化(UPPER, TRIM)
- 数值精度处理(ROUND)
- 状态码转换(CASE WHEN)
- 无效数据过滤(WHERE条件)
适用场景:
- IoT设备数据清洗
- 日志标准化处理
- 数据质量保证
2. 数据富化和计算字段
场景描述: 基于原始数据计算和添加新字段,包括:
- 单位转换(摄氏度转华氏度)
- 分类标签生成(温度分级)
- 字符串拼接(全标识符)
- 时间戳添加
- 比率计算
适用场景:
- 数据预处理
- 业务规则应用
- 指标计算
3. 实时告警和事件过滤
场景描述: 实时检测异常数据并生成告警事件,包括:
- 阈值检测
- 告警级别分类
- 告警消息生成
- 时间戳记录
适用场景:
- 监控系统
- 异常检测
- 实时告警
4. 数据格式转换
场景描述: 将数据转换为不同的格式,包括:
- JSON格式输出
- CSV格式输出
- 自定义格式转换
适用场景:
- 数据接口适配
- 多系统集成
- 数据导出
5. 基于条件的数据路由
场景描述: 根据数据内容决定数据的路由目标,包括:
- 条件路由规则
- 优先级分类
- 主题分发
适用场景:
- 消息队列路由
- 数据分发
- 负载均衡
6. 嵌套字段处理
场景描述: 处理复杂的嵌套JSON数据,包括:
- 深层字段提取
- 嵌套字段组合
- 条件判断
适用场景:
- JSON数据处理
- 复杂数据结构解析
- API数据转换
核心特性
实时处理
- 每条数据立即处理,无需等待窗口
- 超低延迟,适合实时场景
- 支持高吞吐量数据流
丰富的函数支持
- 字符串处理:UPPER, LOWER, TRIM, CONCAT, SUBSTRING等
- 数学计算:ROUND, CAST, 算术运算等
- 条件判断:CASE WHEN, COALESCE, IF等
- 时间函数:NOW, DATE_FORMAT等
- 类型转换:CAST, TO_JSON等
灵活的字段操作
- 字段选择和别名
- 嵌套字段访问(点号语法)
- 计算字段生成
- 表达式计算
强大的过滤能力
- WHERE条件过滤
- 复杂表达式支持
- 多条件组合(AND, OR)
- 模式匹配(LIKE 语法)
性能特点
- 低延迟: 每条数据立即处理输出
- 高吞吐: 支持高频数据流
- 内存友好: 无需缓存数据,即时处理
- CPU高效: 简单的数据转换操作