大資料基礎之詞頻統計Word Count
對檔案進行詞頻統計,是一個大資料領域的hello word級別的應用,來看下實現有多簡單:
1 Linux單機處理
egrep -o "\b[[:alpha:]]+\b" test_word.log|sort|uniq -c|sort -rn|head -10
2 Spark分散式處理(Scala)
val sparkConf = new SparkConf() val sc = new SparkContext(sparkConf) sc.textFile("test_word.log").flatMap(_.split("\\s+")).map((_, 1)).reduceByKey(_ + _).sortBy(_._2, false).take(10).foreach(println)
測試檔案test_word.log內容如下:
hello world
hello www
輸出如下:
2 hello
1 world
1 barney
相關推薦
大資料基礎之詞頻統計Word Count
對檔案進行詞頻統計,是一個大資料領域的hello word級別的應用,來看下實現有多簡單: 1 Linux單機處理 egrep -o "\b[[:alpha:]]+\b" test_word.log|sort|uniq -c|sort -rn|head -10 2 Spark分散式處理(Sca
大數據基礎之詞頻統計Word Count
als spark 級別 NPU share block 內容 atm world 對文件進行詞頻統計,是一個大數據領域的hello word級別的應用,來看下實現有多簡單: 1 Linux單機處理 egrep -o "\b[[:alpha:]]+\b" test_wor
大資料基礎之Oozie vs Azkaban
概括: Azkaban是一個非常輕量的開源排程框架,適合二次開發,但是無法直接用於生產環境,存在致命缺陷(比如AzkabanWebServer是單點,1年多時間沒有修復),在一些情景下的行為簡單粗暴(比如重啟AzkabanExecutorServer會導致該server上正在執行的所有流程fail),很多時
大資料基礎之Quartz(1)簡介、原始碼解析
一簡介 官網 http://www.quartz-scheduler.org/ What is the Quartz Job Scheduling Library? Quartz is a richly featured, open source job scheduling libra
大資料基礎之Kafka(1)簡介、安裝及使用
http://kafka.apache.org 一 簡介 Kafka® is used for building real-time data pipelines and streaming apps. It is horizontally scalable,&nb
大資料基礎之Spark(1)Spark Submit即Spark任務提交過程
Spark版本2.1.1 一 Spark Submit本地解析 1.1 現象 提交命令: spark-submit --master local[10] --driver-memory 30g --class app.package.AppClass app-1
分分鐘理解大資料基礎之Spark
一背景 Spark 是 2010 年由 UC Berkeley AMPLab 開源的一款 基於記憶體的分散式計算框架,2013 年被Apache 基金會接管,是當前大資料領域最為活躍的開源專案之一 Spark 在 MapReduce 計算框架的基礎上,支援計算物件資料可以直接快取到記憶體中,大大提高了整體
大資料基礎之Spark
一背景 Spark 是 2010 年由 UC Berkeley AMPLab 開源的一款 基於記憶體的分散式計算框架,2013 年被Apache 基金會接管,是當前大資料領域最為活躍的開源專案之一 Spark 在 MapReduce 計算框架的基礎上,支援計算物件資料可以直接快取到
大資料基礎之如何匯出jar包並放在hdfs上執行
我口才不好,文字描述也不行,但是基本邏輯是通的。 匯出jar包1.首先完成mapper和reducer還有main方法的編碼2。右鍵點選peopleinfo的包,選擇export-》Java-》JAR file,點選NEXT3.輸入jar包名稱以及匯出地址,點選next->next4.點選Browse
【原創】大資料基礎之Spark(4)RDD原理及程式碼解析
一 簡介 spark核心是RDD,官方文件地址:https://spark.apache.org/docs/latest/rdd-programming-guide.html#resilient-distributed-datasets-rdds官方描述如下:重點是可容錯,可並行處理 Spark r
【原創】大資料基礎之Spark(5)Shuffle實現原理及程式碼解析
一 簡介 Shuffle,簡而言之,就是對資料進行重新分割槽,其中會涉及大量的網路io和磁碟io,為什麼需要shuffle,以詞頻統計reduceByKey過程為例, serverA:partition1: (hello, 1), (word, 1)serverB:partition2: (hell
【原創】大資料基礎之Hive(1)Hive SQL執行過程
hive 2.1 hive執行sql有兩種方式: 執行hive命令,又細分為hive -e,hive -f,hive互動式; 執行beeline命令,beeline會連線遠端thrift server; 下面分別看這些場景下sql是怎樣被執行的: 1 hive命令 啟動
【原創】大資料基礎之Spark(6)rdd sort實現原理
spark 2.1.1 spark中可以通過RDD.sortBy來對分散式資料進行排序,具體是如何實現的?來看程式碼: org.apache.spark.rdd.RDD /** * Return this RDD sorted by the given key function.
【原創】大資料基礎之Spark(7)spark讀取檔案split過程(即RDD分割槽數量)
spark 2.1.1 spark初始化rdd的時候,需要讀取檔案,通常是hdfs檔案,在讀檔案的時候可以指定最小partition數量,這裡只是建議的數量,實際可能比這個要大(比如檔案特別多或者特別大時),也可能比這個要小(比如檔案只有一個而且很小時),如果沒有指定最小partition數量,初始化完成的
大資料學習之路106-spark streaming統計結果寫入mysql
我們首先將資料庫的配置資訊寫到配置檔案中。 要使用配置檔案的話,首先我們要在pom檔案中匯入配置檔案讀取依賴: <dependency> <groupId>com.typesafe</groupId>
大資料技術之 Linux 基礎
一、Linux 入門概述 概述 Linux 核心最初只是由芬蘭人林納斯·託瓦茲(Linus Torvalds)在赫爾辛基大學上學時出於個人愛好而編寫的。 Linux 是一套免費使用和自由傳播的類 Unix 作業系統,是一個基於 P
大資料學習之ubuntu的基礎操作
時隔兩個星期,學習了和複習了大資料的一些基本操作,第一系列是ubuntu的基礎! 基礎涉及到: 1.virtualBOX的安裝和使用 2.FTP工具傳輸 3.root使用者密碼設定和vim的安裝 4.建立使用者並設定許可權:這裡使用Hadoop使用者 5
大資料學習之路107-spark streaming基於mysql歷史state統計
package com.test.sparkStreaming import java.sql.{DriverManager, PreparedStatement} import com.typesafe.config.{Config, ConfigFactory} im
大資料基礎環境之hbase(3臺虛擬機器)
hbase安裝 注意開啟hbase之前,需要將之前的hadoop叢集開啟 start-all.sh (啟動hadoop) zkServer.sh start(各個節點均執行) 1.同樣先建立工作路徑/usr/hbase,將/opt/soft下的hbase加壓到工作路
大資料基礎環境之kafka(3臺虛擬機器)
Kafka叢集: 首先,下載解壓壓縮包 kafka_2.11-2.0.0.tgz 到 /usr/kafka/ 配置/usr/kafka/kafka_2.11-2.0.0/config/server.properties檔案: 開啟監聽埠(開啟這一行註釋):