Flink中,如何將DataStream中的一個(gè)元素轉(zhuǎn)換為n個(gè)元素
將DataStream中的每一個(gè)元素轉(zhuǎn)換為0...n個(gè)元素
示例
讀取flatmap.log文件中的數(shù)據(jù)?
如:
張三,蘋果手機(jī),聯(lián)想電腦,華為平板
李四,華為手機(jī),蘋果電腦,小米平板
轉(zhuǎn)換為
張三有蘋果手機(jī)
張三有聯(lián)想電腦
張三有華為平板
李四有…
…
…
思路
以上數(shù)據(jù)為一條轉(zhuǎn)換為三條,顯然,應(yīng)當(dāng)使用flatMap來實(shí)現(xiàn)分別在flatMap函數(shù)中構(gòu)建三個(gè)數(shù)據(jù),并放入到一個(gè)列表中
步驟
構(gòu)建批流理運(yùn)行環(huán)境
構(gòu)建本地集合數(shù)據(jù)源
使用flatMap將一條數(shù)據(jù)經(jīng)過處理轉(zhuǎn)換為三條數(shù)據(jù)
使用逗號分隔字段
分別構(gòu)建三條數(shù)據(jù)
打印輸出
參考代碼
