本文為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]
本文由 白鯨開源 提供釋出支援!