马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
其他案例demo可以参考我的GitHub
https://github.com/NuistGeorgeYoung/flink_stream_test/
编写一个Flink步伐大抵上可以分为以下几个步调:
- 得到一个execution environment, env
- val env = StreamExecutionEnvironment.getExecutionEnvironment
复制代码 之后你可以设置以下设置
- 并行度(Parallelism):
- 设置作业的并行度,即利用符(operator)的并行实例数。这可以通过env.setParallelism(int parallelism)来设置。
- 实行模式(Execution Mode):
- Flink支持两种实行模式:本地实行(LOCAL)和集群实行(CLUSTER)。固然getExecutionEnvironment默认大概根据你的环境选择实行模式,但在某些环境下你大概必要显式设置。不外,通常这不是通过StreamExecutionEnvironment直接设置的,而是通过设置文件或下令行参数来控制的。
- 时间特性(Time Characteristics):
- Flink支持处理处罚时间(Processing Time)、变乱时间(Event Time)和摄入时间(Ingestion Time)。你可以通过env.setStreamTimeCharacteristic(TimeCharacteristic timeCharacteristic)来设置时间特性。
- 状态后端(State Backend):
- 状态后端用于存储和管理Flink作业的状态。你可以通过env.setStateBackend(StateBackend backend)来设置状态后端。常见的状态后端包罗FsStateBackend(基于文件体系的状态后端)和RocksDBStateBackend(基于RocksDB的状态后端)。
- 查抄点(Checkpointing):
- Flink的容错机制依靠于查抄点(Checkpointing)。你可以通过env.enableCheckpointing(long interval)来启用查抄点,并通过一系列其他方法来设置查抄点的详细活动,如setCheckpointingMode、setCheckpointTimeout等。
- 重启计谋(Restart Strategies):
- Flink答应你设置作业在遇到故障时的重启计谋。你可以通过env.setRestartStrategy方法来设置重启计谋,比如固定延长重启、失败率重启等。
- 使命槽(Task Slots)和资源(Resources):
- 这些设置通常不是通过StreamExecutionEnvironment直接设置的,而是通过Flink的设置文件(如flink-conf.yaml)或提交作业时的下令行参数来设置的。它们涉及到Flink集群的资源分配和使命调理。
基于聚集
通用方法
- 加载/创建初始数据, source
- 数据集包罗但不限于以下这几种
- 基于文件
- readTextFile(path)/ TextInputFormat- 按行读取文件并将其作为字符串返回。
- readTextFileWithValue(path)/ TextValueInputFormat- 按行读取文件并将它们作为StringValues返回。StringValues是可变字符串。
- readCsvFile(path)/ CsvInputFormat- 分析逗号(或其他字符)分隔字段的文件。返回元组或POJO的DataSet。支持根本java范例及其Value对应作为字段范例。
- readFileOfPrimitives(path, Class)/ PrimitiveInputFormat- 分析新行(或其他字符序列)分隔的原始数据范例(如String或)的文件Integer。
- readFileOfPrimitives(path, delimiter, Class)/ PrimitiveInputFormat- 分析新行(或其他字符序列)分隔的原始数据范例的文件,比方String或Integer使用给定的分隔符。
- readSequenceFile(Key, Value, path
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!qidao123.com:ToB企服之家,中国第一个企服评测及软件市场,开放入驻,技术点评得现金 |