You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by du...@apache.org on 2021/08/03 06:50:45 UTC
[rocketmq-streams] 17/35: modify the README.md
This is an automated email from the ASF dual-hosted git repository.
duhengforever pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/rocketmq-streams.git
commit 5555b67eba44b45356a53082ec8b7b496b5fbf9e
Author: 刈刀 <je...@gmail.com>
AuthorDate: Mon Aug 2 12:48:41 2021 +0800
modify the README.md
---
README.md | 30 ++++++++++++++++--------------
1 file changed, 16 insertions(+), 14 deletions(-)
diff --git a/README.md b/README.md
index 649319c..92a9b2f 100644
--- a/README.md
+++ b/README.md
@@ -44,6 +44,7 @@ StreamBuilder 用于构建流任务的源; 内部包含```dataStream()```和``
## DataStream API
### Source
+
DataStreamSource 是分段式编程的源头类,用于对接各种数据源, 从各大消息队列中获取数据;
+ ```fromFile``` 从文件中读取数据, 该方法包含俩个参数
@@ -56,13 +57,15 @@ DataStreamSource 是分段式编程的源头类,用于对接各种数据源,
+ ```groupName``` 消费者组的名称,必填参数
+ ```isJson``` 是否json格式,非必填参数
+ ```tags``` rocketmq消费的tags值,用于过滤消息,非必填参数
-
+
+ ```from``` 自定义的数据源, 通过实现ISource接口实现自己的数据源
### transform
+
transform 允许在流计算过程中对输入源的数据进行修改,进行下一步的操作;DataStream API中包括```DataStream```,```JoinStream```, ```SplitStream```,```WindowStream```等多个transform类;
#### DataStream
+
DataStream实现了一系列常见的流计算算子
+ ```map``` 通过将源的每个记录传递给函数func来返回一个新的DataStream
@@ -76,30 +79,29 @@ DataStream实现了一系列常见的流计算算子
+ ```toFile``` 将结果保存为文件,生成一个新的DataStreamAction实例
+ ```toDB``` 将结果保存到数据库
+ ```toRocketmq``` 将结果输出到rocketmq
-+ ```toSls``` 将结果输出到sls
+ ```to``` 将结果经过自定义的ISink接口输出到指定的存储
+ ```window``` 在窗口内进行相关的统计分析,一般会与```groupBy```连用, ```window()```用来定义窗口的大小, ```groupBy()```用来定义统计分析的主key,可以指定多个
- + ```count``` 在窗口内计数
- + ```min``` 获取窗口内统计值的最小值
- + ```max``` 获取窗口内统计值得最大值
- + ```avg``` 获取窗口内统计值的平均值
- + ```sum``` 获取窗口内统计值的加和值
- + ```reduce``` 在窗口内进行自定义的汇总运算
+ + ```count``` 在窗口内计数
+ + ```min``` 获取窗口内统计值的最小值
+ + ```max``` 获取窗口内统计值得最大值
+ + ```avg``` 获取窗口内统计值的平均值
+ + ```sum``` 获取窗口内统计值的加和值
+ + ```reduce``` 在窗口内进行自定义的汇总运算
+ ```join``` 根据条件将将俩个流进行关联, 合并为一个大流进行相关的运算
+ ```union``` 将俩个流进行合并
+ ```split``` 将一个数据流按照标签进行拆分,分为不同的数据流供下游进行分析计算
+ ```with``` with算子用来指定计算过程中的相关策略,包括checkpoint的存储策略,state的存储策略等
+# Strategy
-# Strategy
策略机制主要用来控制计算引擎运行过程中的底层逻辑,如checkpoint,state的存储方式等,后续还会增加对窗口、双流join等的控制;所有的控制策略通过```with```算子传入,可以同时传入多个策略类型;
```java
//指定checkpoint的存储策略
source
-.fromRocketmq("TSG_META_INFO", "")
-.map(message -> message + "--")
-.toPrint(1)
-.with(CheckpointStrategy.db("jdbc:mysql://XXXXX:3306/XXXXX", "", "", 0L))
-.start();
+ .fromRocketmq("TSG_META_INFO","")
+ .map(message->message+"--")
+ .toPrint(1)
+ .with(CheckpointStrategy.db("jdbc:mysql://XXXXX:3306/XXXXX","","",0L))
+ .start();
```
\ No newline at end of file