如何入門ApacheFlink中的Flinksink,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
10余年的興和網站建設經驗,針對設計、前端、開發、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。營銷型網站的優勢是能夠根據用戶設備顯示端的尺寸不同,自動調整興和建站的顯示方式,使網站能夠適用不同顯示終端,在瀏覽器中調整網站的寬度,無論在任何一種瀏覽器上瀏覽網站,都能展現優雅布局與設計,從而大程度地提升瀏覽體驗。創新互聯建站從事“興和網站設計”,“興和網站推廣”以來,每個客戶項目都認真落實執行。
將DataSet中的數據Sink到哪里去。使用的是對應的OutPutFormat,也可以使用自定義的sink,有可能寫到hbase中,hdfs中。
writeAsText() / TextOutputFormat ,以String的形式寫入
writeAsCsv(...) / CsvOutputFormat,以CSV的方式寫進去
print() / printToErr() / print(String msg) / printToErr(String msg)以標準輸出
object DataSetSinkApp { def main(args: Array[String]): Unit = { val environment = ExecutionEnvironment.getExecutionEnvironment val data = 1.to(10) val text = environment.fromCollection(data) val filePath = "E:/test" text.writeAsText(filePath) environment.execute("DataSetSinkApp") } }
如果E:/test文件或者文件夾存在,將無法執行成功。除非增加一個WriteMode.OVERWRITE
text.writeAsText(filePath, WriteMode.OVERWRITE)
這樣就在E盤下新建了一個test文件,內容是1到10。
那么如何保存到文件夾中?
text.writeAsText(filePath, WriteMode.OVERWRITE).setParallelism(2)
設置并行度為2,這樣就存到test文件夾下,兩個文件1和2
默認情況下,不設置并行度,會把結果寫到一個文件中,如果設置并行度,那么每一個并行度都對應一個輸出。
public static void main(String[] args) throws Exception { ExecutionEnvironment executionEnvironment = ExecutionEnvironment.getExecutionEnvironment(); List<Integer> info = new ArrayList<>(); for(int i = 1;i <=10; i++) { info.add(i); } DataSource<Integer> data1 = executionEnvironment.fromCollection(info); String filePath = "E:/test2"; data1.writeAsText(filePath, FileSystem.WriteMode.OVERWRITE); executionEnvironment.execute("JavaDataSetSinkApp"); }
看完上述內容,你們掌握如何入門ApacheFlink中的Flinksink的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注創新互聯行業資訊頻道,感謝各位的閱讀!
文章題目:如何入門ApacheFlink中的Flinksink
標題鏈接:http://m.newbst.com/article8/gdehop.html
成都網站建設公司_創新互聯,為您提供網站收錄、網站排名、虛擬主機、定制開發、手機網站建設、App設計
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯