Flink程序构成部分

⚫ 获取执行环境( execution environment)
⚫ 读取数据源( source)
⚫ 定义基于数据的转换操作( transformations)
⚫ 定义计算结果的输出位置( sink)

1 source

1 从集合中读取数据

最简单的读取数据的方式,就是在代码中直接创建一个Java集合,然后调用执行环境fromCollection方法进行读取。这相当于将数据临时存储到内存中,形成特殊的数据结构后,作为数据源使用,一般用于测试。

2 从文件读取数据

真正的实际应用中,自然不会直接将数据写在代码中。通常情况下,我们会从存储介质中获取数据,一个比较常见的方式就是读取日志文件。这也是批处理中最常见的读取方式。

1
DataStream<String> stream = env.readTextFile("clicks .csv“);

3 socket

https://www.jianshu.com/p/cb26a0f6c622

socket文本流的读取需要配置两个参数:发送端主机名和端口

文本流数据的发送,可以通过 Linux系统自带的 netcat工具进行模拟。

1
nc -lk 7777

4 kafka

5 自定义 Source

3 sink

1 输出到文件

2 输出到 Kafka

3 输出到 Redis

4 输出到 Elasticsearch

5 输出到 MySQL (JDBC)

6 自定义 Sink输出

Author

Lavine Hu

Posted on

2022-03-20

Updated on

2022-05-08

Licensed under

# Related Post
  1.flink cdc
  2.并行度设置
  3.物理分区
  4.流批选择
  5.datastream
  6.Table API和SQL
  7.状态编程
  8.flink cep
Comments

:D 一言句子获取中...