原文:Flink udf的小問題:無參數的udf函數會被優化成常量表達式

這兩天有一個使用flink sql的實時流項目,需要在每個結果中標記當前時間。因為flink沒有獲取當前時間的函數,於是我自己定義了一個udf: 然后注冊成currentUnixTime 進行使用: 本來以為就是這么簡單的事情,結果看實時流數據的時候發現,這個時間一直都是任務啟動時間,有點摸不着頭腦。於是開啟了研究,以下為內容轉自:https: www.cnblogs.com Springmoon ...

2020-08-25 17:00 0 574 推薦指數:

查看詳情

Flink 1.10 UDF 的一個小問題

在使用 Flink 1.10 的 SQL 的時候,遇到個小問題: 一個返回當前時間的函數返回的結果是啟動的時間,並且保持不變。 比如下面這個UDF,獲取當前時間的 時分秒(HH:mm:ss 格式) 最開始用的時候,直接寫了這么個UDF,還自我感覺很溜。。。 在測試的時候,也沒有 ...

Mon May 25 21:27:00 CST 2020 0 727
常量表達式(constexpr)

首先,常量表達式的概念:在編譯期就可以計算出結果的表達式 那么為什么要用常量表達式呢,用常量表達式會有什么好處:   1.允許一些計算只在編譯時進行一次,而不是每次程序運行時;   2.編譯器可以進行尺度更大的優化;   3.可以用在需求編譯期間常量的上下文,例如數組長度等; 使用 ...

Wed May 22 03:12:00 CST 2019 0 1980
java 常量表達式

原文地址:http://docs.oracle.com/javase/specs/jls/se8/html/jls-15.html#jls-15.28 這是我翻譯的,以備不時之用。 常量表達式是一個代表基本數據類型或者String數據類型的表達式,是在編譯期間能計算出來的值.由以下幾點 ...

Sun Mar 29 22:35:00 CST 2015 1 1957
constexpr與常量表達式(c++11標准)

常量表達式(const expression):是指值不會改變並且在編譯過程中就得到計算結果的表達式。(運行中得到結果的不能成為常量表達式)。 const int i=3; //是一個常量表達式 const int j=i+1 ...

Sun Jan 17 19:57:00 CST 2016 0 21442
Flink RetractStream示例及UDF函數實現

介紹 今天在Flink 1.7.2版本上跑一個Flink SQL 示例 RetractPvUvSQL,報 從提示看應該是不支持參數為字符串,接下來我們自定義一個UDF函數來支持這種場景。 官網不建議使用DATE_FORMAT(timestamp, string) 這種方式 ...

Fri Aug 28 01:21:00 CST 2020 2 743
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM