如何切換SNS流工作提升到一個新的SQS隊列

寫的亞當Pavlacka

去年發表在:2022年5月18日

問題

你有一個結構化的流媒體通過S3-SQS連接器工作運行。假設您想重現源SQS, SNS的支持數據,你想進行一個新的隊列處理同樣的工作,在同一輸出目錄。

解決方案

使用以下過程:

  1. 創建新的SQS隊列和訂閱s3-events(從SNS)。在這一點上,同樣的消息是在新舊隊列。
  2. 設置選項allowOverwrites在新的流媒體工作並開始運行它。
  3. 拿一個重疊的時間間隔大於觸發時間短,關閉舊的工作。

為什麼這個工作嗎?

與SQS流,Apache火花維護檢查點目錄中的文件路徑。如果你設置allowOverwrites(默認為真正的獲取的),一個將被丟棄而同時運行隊列。在這種情況下,文件沒有再加工,沒有任何副本或數據丟失。

這篇文章有用嗎?