Files
2025-06-16 14:39:39 +08:00

123 lines
2.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# StreamSQL 非聚合场景使用示例
本示例展示了StreamSQL在非聚合场景中的各种应用,包括实时数据转换、过滤、清洗等功能。
## 运行示例
```bash
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高效**: 简单的数据转换操作