Win7 Eclipse 搭建spark java1.8(lambda)環境:WordCount helloworld例子

来源:https://www.cnblogs.com/haima1949/archive/2019/08/12/11341588.html
-Advertisement-
Play Games

Win7 Eclipse 搭建spark java1.8(lambda)環境:WordCount helloworld例子 ...


[學習筆記]

Win7 Eclipse 搭建spark java1.8(lambda)環境:WordCount helloworld例子

lambda表達式是java8給我們帶來的一個重量的新特性,借用lambda表達式可以讓我們的程式設計更加簡潔。

package com;
import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaPairRDD;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;
import org.apache.spark.api.java.function.VoidFunction;
import scala.Tuple2;
import java.util.Arrays;
import java.util.List;
public class WordCountLambda {
    public static void main(String[] args) {
        SparkConf conf = new SparkConf().setAppName("WordCountLambda馬克-to-win @ 馬克java社區:").setMaster("local");
        JavaSparkContext sc = new JavaSparkContext(conf);
         JavaRDD<String> lines = sc.textFile("E://temp//input//friend.txt");
         JavaRDD<String> words = lines.flatMap(line -> Arrays.asList(line.split(" ")));
         JavaPairRDD<String, Integer> wordAndOne = words.mapToPair(word -> new Tuple2<>(word, 1));
        JavaPairRDD<String, Integer> results = wordAndOne.reduceByKey((x, y) -> x + y);
/* 下麵一句也能工作。*/       
 //       reduced.saveAsTextFile("E://temp//input//friend1.txt");
/*word:o1abc count:4
word:45 count:1
word:77 count:1*/       
        results.foreach(new VoidFunction<Tuple2<String,Integer>>() {
            public void call(Tuple2<String, Integer> tuple) throws Exception {
                System.out.println("word:" + tuple._1 + " count:" + tuple._2);
            }
        });
/*resultsPair is (o1abc,4)
resultsPair is (45,1)
resultsPair is (77,1)*/       
        List<Tuple2<String,Integer>> resultsPairs = results.collect();
        for (Tuple2<String, Integer> resultsPair : resultsPairs) {
    

更多請見:https://blog.csdn.net/qq_44596980/article/details/93385254


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1、判斷/etc/inittab文件是否大於100行,如果大於,則顯示”/etc/inittab is a big file.”否者顯示”/etc/inittab is a small file.” #!/bin/bash a=`awk '{print NR}' /etc/inittab|tail ... ...
  • 在hive命令終端直接導入文本數據: 查看特征: 通過LOAD命令直接將hadoop文件系統上的文件導入,不加LOCAL hive數據導入另外一種方法: ...
  • SQL 通配符 在搜索資料庫中的數據時,SQL 通配符可以替代一個或多個字元。 SQL 通配符必須與 LIKE 運算符一起使用。 在 SQL 中,可使用以下通配符: [^charlist]或者[!charlist] 原始的表 (用在例子中的): Persons 表: 使用 % 通配符 例子 1 現在 ...
  • Oracle資料庫四種數據完整性約束 1.實體完整性 同樣的數據不能重覆插入(1)採取什麼措施保證實體完整性?我們可以給表創建主鍵約束嗎,主鍵保證了數據的唯一性,主鍵可以保證同一條記錄只能插入一次。一般情況下,只有一個欄位可以添加主鍵,此欄位一般是編號 2.域完整性 一般是對一個欄位的約束例如:學號 ...
  • 資料庫複習提綱之文字版(這個只是自己整理文案,答案是查的,勿噴,謝謝,希望給別人一些幫助) 1、Oracle和SQL server2005的區別 Oracle資料庫:Oracle Database,又名Oracle RDBMS,或簡稱Oracle。是甲骨文公司的一款關係資料庫管理系統。 它是在資料庫 ...
  • 環境描述: 雙節點RAC 資料庫:版本12.2.0.1 操作系統:linux 6.9 一、利用圖形化 準備好掛載點 cd /mkdir oggchown oracle:oinstall ogg chmod 775 /ogg 圖形化 asmca 我這裡是有問題,不知道什麼原因,做個記錄。後面手動掛載。 ...
  • 【查看mysql最大鏈接數】 MariaDB [(none)]> show variables like 'max_connections'; + + + | Variable_name | Value | + + + | max_connections | 151 | + + + + + + | ...
  • 記錄一下今天被坑了一下午的BUG 就從半個月前說起吧 當時..................................................................................................................... ... ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...