2017-07-18 71 views
0

我正在測試flink處理不同數據量的性能,所以我需要Job Runtime來記錄和分析。當處理大量數據時,flink日誌丟失

當我使用flink來處理一萬個記錄這樣的小數據集時,我可以得到Job Runtime日誌如下。

07/18/2017 17:41:47 DataSink (collect())(1/1) switched to FINISHED 
07/18/2017 17:41:47 Job execution switched to status FINISHED. 
Program execution finished 
Job with JobID 3f7658725aaae8cd3427d2aad921f2ef has finished. 
Job Runtime: 1124 ms 
Accumulator Results: 
- c28953fb854da74d18dc7c168b988ca2 (java.util.ArrayList) [15433 elements] 

但是當我使用弗林克來處理一點點大的數據集像五萬條記錄,我不能讓工作運行信息,如下,和外殼stucked:

07/18/2017 17:49:33 DataSink (collect())(1/1) switched to FINISHED 
07/18/2017 17:49:33 Job execution switched to status FINISHED. 

有我需要修改的任何配置?

爲什麼當數據集更大時shell會被刪除?

希望有人能回答我doubts.Thanks〜

回答

0

弗林克使用阿卡進行遠程通訊,和蓄結果作爲一個單一的信息返回給客戶端發送。阿卡強加一個最大的消息大小,並且你可能達到了極限。幾點建議:

  1. 檢查JobManager日誌,查找與Akka相關的錯誤消息。
  2. 通過Flink配置增加最大尺寸,例如akka.framesize。有關更多信息,請參閱Flink documentation
+0

我增加了akka.framesize,問題解決了。謝謝〜 – lulijun