flink原理和基本功能是什么,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
成都創(chuàng)新互聯(lián)公司從2013年成立,先為長洲等服務(wù)建站,長洲等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為長洲企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
具有時間邊界的數(shù)據(jù)集,處理過程中數(shù)據(jù)一定會在某個時間內(nèi)開始和結(jié)束。
數(shù)據(jù)只有開始沒有邊界。
SQL API支持批和流的計算。
Table API將內(nèi)存中的DataStream和DataSet數(shù)據(jù)集在原有的基礎(chǔ)上增加Schema信息,將數(shù)據(jù)類型統(tǒng)一抽象成表結(jié)構(gòu),然后通過Table API接口處理對應(yīng)的數(shù)據(jù)集。
SQL API可以直接查詢Table API注冊表的數(shù)據(jù)。
Tabel API 提供大量接口如GroupByKey、Join等,并支持和DataStream和DataSet的相互轉(zhuǎn)換。
有編程經(jīng)驗者使用,1.12版本開始DataStream處理流批數(shù)據(jù),DataSet接口逐步廢除。
Flink最底層接口,靈活性非常強,可實現(xiàn)復(fù)雜的流式計算邏輯,使用成本較高,一般企業(yè)級用戶使用它進行二次開發(fā)或深度封裝。
設(shè)定運行環(huán)境,支持動態(tài)(本地和線上)啟動、本地啟動、遠程線上啟動三種。
StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment(); //指定處理方式批處理、流處理、自適應(yīng) env.setRuntimeMode(RuntimeExecutionMode.AUTOMATIC);
指定數(shù)據(jù)源
DataSet<String> text = env.readTextFile("/path/to/file");
操作數(shù)據(jù)集
DataSet<Tuple2<String, Integer>> counts = text.flatMap(_.toLowerCase.split(" ")) //實行map轉(zhuǎn)換 .filter(_.nonEmpty) //過濾控制 .map((_,1)) //執(zhí)行map轉(zhuǎn)換,轉(zhuǎn)換為key-value .keyBy(0) //按照指定第一個字段key進行分區(qū), .sum(1); //分區(qū)后按第二個字段求和
指定結(jié)果輸出
counts.writeAsCsv(outputPath, "\n", " ");
指定名稱并觸發(fā)
env.execute("Streaming Count");
flink有豐富的數(shù)據(jù)類型支持,統(tǒng)一由TypeInformation定義。支持與java、scala任意數(shù)據(jù)類型轉(zhuǎn)換。
BasicTypeInfo類型支持任意java基礎(chǔ)類型和String類型。
TupleTypeInfo描述Tuple類型數(shù)據(jù),2019年版本支持字段上線為25個。
CaseClassTypeInfo支持任意Scala Case class,包括Scala tuples,2019年支持最大字段數(shù)為22個。
PojoTypeInfo描述任意POJO類型,
POJO類必須是public修飾的非內(nèi)部類。
POJO類必須含有默認空構(gòu)造器
PoJO類所有字段必須是public,類型必須是flink支持的。
Value數(shù)據(jù)類型實現(xiàn)了org.apache.flink.types.Value,其中包含read()和write()兩種序列化和反序列化操作。目前內(nèi)建類型有IntValue、DoubleValue、StringValue。
scala中的List、Map、Either、Option、Try,java中Either,hadoop中Writable。
Flink作為新一代計算引擎,在實時計算領(lǐng)域有著及其重要的地位,同時也有這復(fù)雜的概念,時間窗口、水位線等,學(xué)習(xí)并理解成本不低。
看完上述內(nèi)容,你們掌握flink原理和基本功能是什么的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
分享名稱:flink原理和基本功能是什么
文章分享:http://jinyejixie.com/article18/jopidp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計、域名注冊、網(wǎng)頁設(shè)計公司、移動網(wǎng)站建設(shè)、電子商務(wù)、
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)