流计算程序不报错,但是没有输出的一些原因(持续更新中)
①集群運行后打印的內容在$FLINK_HOME/logs中的.out文件中[2]
或者在$HADOOP_HOME/logs的.out文件里面(尤其是on yarn模式)
②沒有print()語句
③忘記寫execute()
④keyby()或者filter注釋后,嘗試重新運行
⑤沒有對窗口進行trigger[1]
⑥沒有滿足waterMark觸發條件
⑦沒有滿足window的觸發條件
⑧輸出的sink配置和自己查詢的是否一致
⑨表轉流輸出,那么代碼中需要進行兩次execute:
⑩kafka的consumer.properties中的group.id指的是命令行消費的時候的group.id
代碼中如果運行一次有消費,運行第二次沒有輸出了,此時可以通過修改group.id來再次輸出。
因為綁定group.id以后,會導致確保該group中的數據只被消費一次。
? topic寫錯
? orc partition沒寫導致hive查不到的
? interval太大導致hive查不到
?SASL認證出錯
?集群信息寫錯
?
?
1.tEnv.executeSql(createTable)
2.bsEnv.execute("Flink SQL DDL")
該種情況的完整用法見
https://gitee.com/appleyuchi/Flink_Code/blob/master/flink讀kafka/Scala/src/main/scala/FlinkKafkaDDLDemo.scala
⑩時區bug導致沒有輸出的[3]
?flink sql client中的
'connector.startup-mode' = 'latest-offset'
改成
'connector.startup-mode' = 'earliest-offset'
?
Reference:
[1]flink的datastream進行join操作沒有輸出結果一例
[2]flink中datastream和dataset各自print()的異同
[3]flink寫入hive的時區問題
總結
以上是生活随笔為你收集整理的流计算程序不报错,但是没有输出的一些原因(持续更新中)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: dnf至尊宝号什么意思 地下城与勇士
- 下一篇: ff14武士在哪里转职 魔兽世界和ff1