小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Flink中richfunction的一點小作用

 jasonbetter 2019-08-09

①傳遞參數(shù) 
所有需要用戶定義的函數(shù)都可以轉換成richfunction,例如實現(xiàn)map operator中你需要實現(xiàn)一個內部類,并實現(xiàn)它的map方法:

data.map (new MapFunction<String, Integer>() {  public Integer map(String value) { return Integer.parseInt(value); }
});123

然后我們可以將其轉換為RichMapFunction:

data.map (new RichMapFunction<String, Integer>() {  public Integer map(String value) { return Integer.parseInt(value); }
});123

當然,RichFuction除了提供原來MapFuction的方法之外,還提供open, close, getRuntimeContext 和setRuntimeContext方法,這些功能可用于參數(shù)化函數(shù)(傳遞參數(shù)),創(chuàng)建和完成本地狀態(tài),訪問廣播變量以及訪問運行時信息以及有關迭代中的信息。 
下面我們來看看RichFuction中傳遞參數(shù)的例子,以下代碼是測試RichFilterFuction的例子,基于DataSet而非DataStream。 
這里寫圖片描述
由代碼可見,可以將Configuration中的limit參數(shù)的值傳遞進RichFuction里面,通過后面withParameters方法傳遞進去,最后的結果是這里寫圖片描述
由此可見,我從configuration中獲取了limit的值,并設定了fliter的閾值是2,從而過濾了1,2。 
②傳遞廣播變量,原理和上面差不多,下面我直接把代碼貼出來: 
這里寫圖片描述 
這是目前我學習到的RichFunction的用法,和大家分享一下。

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多