mapreduce的思想(代码片段)

author author     2022-11-10     617

关键词:

项目实战案例:搜狗日志查询分析

数据:

一、电商大数据平台整体架构
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进行查询操作![](http://i2.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

mapreduce基础(代码片段)

MapReduce入门理解MapReduce的思想MapReduce的思想核心是先分再合,分而治之所谓的分而治之,就是把一个复杂的问题,按照一定的分解方法分为等价的规模的若干部分,然后捉个解决,分别找出各个部分的结果没... 查看详情

mapreduce编程实践(代码片段)

一、MapReduce编程思想学些MapRedcue主要是学习它的编程思想,在MR的编程模型中,主要思想是把对数据的运算流程分成map和reduce两个阶段:Map阶段:读取原始数据,形成key-value数据(map方法)Reduce阶段:把map阶段的key-value数据按照... 查看详情

从分治算法到mapreduce(代码片段)

从分治算法说起要说MapReduce就不得不说分治算法,而分治算法其实说白了,就是四个字分而治之。其实就是将一个复杂的问题分解成多组相同或类似的子问题,对这些子问题再分,然后再分。直到最后的子问题可以简单得求解。... 查看详情

mapreduce运行原理(代码片段)

MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。MapReduce采用”分而治之”的思想,把对大规模数据集的操作,分发给一个主节点管理下的各个分节点共同完成,然后通过整合各个节点的中间结果,得到最... 查看详情

不容错过!动画图文展示mapreduce核心思想&hadoop实践(代码片段)

MapReducewithHadoopLetsstartbyintroducingaclusterwithdatadistributedamongthem.Wewanttoprocessthisdata.Ourobjectivemaybehereto figurehowmanyobjectstherearepergeometricshapeMapReduceisacornerstonealgorithmusedtoprocessbigdatasets.Itisthegrandfatherofmostofourbigdatatechnologiestoday,andsparkedduringt... 查看详情

初探mapreduce(代码片段)

...自动生成,如何生成可参考右边的帮助文档文章目录MapReduce核心思想MapReduce编程模型MapReduce编程实例——词频统计思路1、Map阶段(映射阶段)2、Reduce阶段(归并阶段)MapReduce编程实例——词频统计实现(1... 查看详情

什么是mapreduce?mapreduce整体架构搭建使用介绍(代码片段)

文章目录前言MapReduce入门MapReduce的核心思想MapReduceyarnYarn伪分布式搭建MapReduce编码需求MapReduce2.0工作机制MapReduce数据流转机制MR编码准备MR编码MapReduce核心apiMapreduce补充细节生产中提交MR任务1maven自动化部署插件wagonApplicationMaster配... 查看详情

hadoop-mapreduce(代码片段)

Hadoop-MapReduce1MapReduce概述1.1MapReduce定义1.2MapReduce优缺点1.2.1优点1.2.2缺点1.3MapReduce核心思想1.4MapReduce进程1.5官方WordCount源码1.6常用数据序列化类型1.7MapReduce编程规范1.8.1本地测试1.8.2编写测试类1.8.3提交到集群测试2Hadoop序列化2.1序... 查看详情

hadoop大数据框架思想及组成(代码片段)

...大版本区别组件一:HDFS组件二:YARN组件三:MapReduce三大组件关联关系大数据技术生态体系Google三大论文第一篇论文:GFS2003年谷歌发表了“TheGoogleFileSystem”(谷歌文件系统,简称GFS)论文,GFS的架... 查看详情

hadoop大数据框架思想及组成(代码片段)

...大版本区别组件一:HDFS组件二:YARN组件三:MapReduce三大组件关联关系大数据技术生态体系Google三大论文第一篇论文:GFS2003年谷歌发表了“TheGoogleFileSystem”(谷歌文件系统,简称GFS)论文,GFS的架... 查看详情

mapreduce模型中数据关联使用or语句导致计算效率低下(代码片段)

MapReduce计算模型中,如果两个数据集的关联,并不是通过数据集的一个唯一键和另一个数据集的一个唯一键关联,那么会导致大量数据分发到一个节点计算,使其效率极其低下。这里的MapReduce并不是仅仅是hive中的mapreduce模型,... 查看详情

python手动实现mapreduce编码统计销售数量(代码片段)

MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)"和"Reduce(归约)",是它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程... 查看详情

mapreduce(代码片段)

MapReduce采用的是“分而治之”的思想,把对大规模数据集的操作,分发给一个主节点管理下的各个从节点共同完成,然后通过整合各个节点的中间结果,得到最终结果。简单来说,MapReduce就是“任务的分解与结果的汇总... 查看详情

mapreduce的核心思想

查看详情

大数据讲课笔记5.1初探mapreduce(代码片段)

...零、学习目标一、导入新课二、新课讲解(一)MapReduce核心思想(二)MapReduce编程模型(三)MapReduce编程实例——词频统计1、词频统计设计思路(1)Map阶段(2)Reduce阶段2、词频统计实现步... 查看详情

wordcount程序设计思想(代码片段)

MapReduce经典案例wordCount的设计思想Mapper阶段1.我们将MapTask传给我们的文本内容先转换成一行字符串2.根据空格对这一行进行分割,从而形成多个单词3.通过for循环我们将得到一系列<单词,1>这样形式的中间结果4.输出... 查看详情

mapreduce的核心编程思想

1.MapReduce的核心编程思想2.yarn集群工作机制3.maptask并行度与决定机制4.maptask工作机制  查看详情

分布式处理框架mapreduce(代码片段)

分布式处理框架MapReduce什么是MapReduceMapReduce编程模型HadoopStreaming实现wordcount(实验了解)什么是MapReduce源于Google的MapReduce论文(2004年12月)Hadoop的MapReduce是Google论文的开源实现MapReduce优点:海量数据离线处理&易开发MapReduce... 查看详情