MapReduce的思想

項目實戰案例:搜狗日誌查詢分析

數據:

一、電商大數據平臺整體架構
1、大數據(Hadoop、Spark、Hive)都是一種數據倉庫的實現方式
核心問題:數據存儲、數據計算
什麼是數據倉庫?傳統的解決大數據的方式,就是一個數據庫
一般只做查詢

2、大數據平臺整體的架構
    部署:Apache、Ambari(HDP)、CDH

二、在項目中使用使用瀑布模型(軟件工程:方法論)
1、瀑布模型幾個階段?
2、每個階段完成的任務

三、使用MapReduce進行分析處理(Java程序)
1、MapReduce的基本原理(編程模型)
() 思想來源:Google的論文:MapReduce 問題 PageRank(網頁排名)
(
) 先拆分、再合併-----> 分佈式計算

2、使用MapReduce進行日誌分析

四、使用Spark進行分析和處理(Scala語言、Java語言)
1、Spark的優點和體系架構
2、使用Scala開發Spark任務進行日誌分析
bin/spark-shell --master spark://bigdata11:7077

    val rdd1 = sc.textFile("hdfs://mydemo71:8020/myproject/data/SogouQ1.txt")
    val rdd2=rdd1.map(_.split("\t")).filter(_.length==6)
    rdd2.count()
    val rdd3=rdd2.filter(_(3).toInt==1).filter(_(4).toInt==2)
    rdd3.count()
    rdd3.take(3)

五、使用Hive(蜂巢)進行分析和處理
1、什麼是Hive?特點?Hive體系結構
是基於HDFS之上的數據倉庫
支持SQL語句
是翻譯器:SQL ----> MapReduce(Spark任務)

2、使用Hive進行查詢操作![](https://s1.51cto.com/images/blog/201805/06/c1b98f5698511262bb9b56d0174a331d.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
        ① 創建Hive對應的表
        create table sogoulog(accesstime string,useID string,keyword string,no1 int,clickid int,url string) row format delimited fields terminated by ',';

    **  ② 將原始數據進行清洗:因爲有些不滿足長度爲6
        val rdd1 = sc.textFile("hdfs://mydemo71:8020/myproject/data/SogouQ1.txt")
        val rdd2=rdd1.map(_.split("\t")).filter(_.length==6)
        val rdd3 = rdd2.map(x=>x.mkString(","))   這裏需要注意轉成字符串
        rdd3.saveAsTextFile("hdfs://mydemo71:8020/myproject/cleandata/sogou")

    **  ③ 將清洗後的數據導入Hive
        load data inpath '/myproject/cleandata/sogou/part-00000' into table sogoulog;
        load data inpath '/myproject/cleandata/sogou/part-00001' into table sogoulog;

        ④ 使用SQL查詢滿足條件的數據(只顯示前10條)**
        select * from sogoulog where no1=1 and clickid=2 limit 10;**
  查詢10號部門 工資大於2000的員工
      很多人都知道我有大數據培訓資料,都天真的以爲我有全套的大數據開發、hadoop、spark等視頻學習資料。我想說你們是對的,我的確有大數據開發、hadoop、spark的全套視頻資料。

如果你對大數據開發感興趣可以加口羣領取免費學習資料: 763835121

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章