本文为Apache SeaTunnel Socket Connector的使用文档,旨在帮助用户快速理解和有效利用Socket Connector,助力用户的应用程序实现高效、稳定的网络通信。
Socket是应用层与TCP/IP协议族之间进行通信的中间软件抽象层,它是网络编程的基础,通过Socket,应用程序可以在网络上发送和接收数据。无论是构建实时聊天应用、数据采集系统,还是需要实现设备之间的通信,Socket Connector都能为用户提供支持。
支持的引擎
Spark
Flink
SeaTunnel Zeta
主要功能
描述
用于从Socket中读取数据。
数据类型映射
文件没有特定的类型列表,我们可以通过在配置中指定 Schema 来指示需要将相应数据转换为的SeaTunnel数据类型。
| SeaTunnel数据类型 | |---------------------| | 字符串 | | 短整数 | | 整数 | | 长整数 | | 布尔值 | | 双精度浮点数 | | 十进制数 | | 浮点数 | | 日期 | | 时间 | | 时间戳 | | 字节 | | 数组 | | 映射 |
选项
| 名称 | 类型 | 必填 | 默认值 | 描述 | |----------------|--------|------|---------|---------------------------------------------------------------------------------------------------| | 主机 | 字符串 | 是 | _ | Socket服务器主机 | | 端口 | 整数 | 是 | _ | Socket服务器端口 | | 通用选项 | | 否 | - | Source 插件通用参数,请参阅Source 通用选项获取详细信息。 |
如何创建Socket数据同步作业
- 配置SeaTunnel配置文件
以下示例演示了如何创建一个从Socket读取数据并将其打印在本地客户端上的数据同步作业:
# 设置要执行的任务的基本配置
env {
execution.parallelism = 1
job.mode = "BATCH"
}
# 创建一个连接到Socket的源
source {
Socket {
host = "localhost"
port = 9999
}
}
# 控制台打印读取的Socket数据
sink {
Console {
parallelism = 1
}
}
-
启动端口监听
nc -l 9999
-
启动SeaTunnel任务
-
Socket源发送测试数据
~ nc -l 9999 test hello flink spark
-
控制台Sink打印数据
[test] [hello] [flink] [spark]
本文由 白鲸开源科技 提供发布支持!