零基础学习hadoop到上手工作线路指导初级篇:hive及mapreduce
此篇是在零基础学习hadoop到上手工作线路指导(初级篇)的基础,一个继续总结。 hadoop 1.x分为 其中mapreduce是很多人都需要迈过去的槛,它比较难以理解,我们有时候即使写出了mapreduce程序,但是还是摸不着头脑。 mapreduce是一种编程模型,那么它能干什么,对我有什么用。它的原理是什么,为什么我们编写了map函数,reduce函数就可以在多台机器上运行。 面对mapreduce,有一篇文章,这里总结的很好,包括:该如何入门,该如何理解mapreduce,该如何练习mapreduce,该如何运用mapreduce。这里面介绍的很全。 我们在学习mapreduce,首先我们从思想上来认识。其实任何的奇思妙想,抽象的,好的想法、都来源于我们生活,而我们也更容易理解我们身边所发生事情。所以下面一篇便是从生活的角度,来让我们理解,什么是mapreduce。 2.设计思路 我们从思想上认识了mapreduce,那么mapreduce具体是什么,我们需要看得见,摸得着。我们该如何实现这个思想,我们该如何设计mapreduce。那么现在来说说它的设计思路。 设计思路如何表示:ok下面的帖子,是通过一张图来表达的。 mapreduce是hadoop的核心,正因为mapreduce,所以才产生了分布式。所以我们可能通过一张图,了解的不够清楚和详细。我们还需要了解里面的原理:
通过上面我们可能有了自己的一些看法。但是我们可能还是认识不太清楚。那么咱们在来看看编程模型,来进一步的了解。 4.产生问题 我们看了上面的文章,这时候会有一些名词、概念进入我们的脑海。 --------------------------------------------------------------------------------------------------- mapreduce是hadoop核心,而shuffle是mapreduce的核心,shuffle个人认为它是一个动态的过程,包含了Combiner,merge等的过程,那么这里因为讲到shuffle,很多人都讲的全面,Combiner,merge,sort几乎全都讲了,这样讲是没有错误的,但是容易给初学者造成一个假象,那就是这些过程必须都是包含的,其实这些是根据个人的需求来确定的。 对于Combiner的疑惑可以查看 为什么需要在Mapper端进行归约处理?
为什么可以在Mapper端进行归约处理?
既然在Mapper端可以进行归约处理,为什么在Reducer端还要处理?
上面三个问题,可以查看帖子
同样关于上面的问题可以参考 5.编程实现 mapreduce是一种编程模型,我们认识了解,下面就需要编程实现了。那么mapreduce都能做些什么?下面我们可以看看 MapReduce初级案例(1):使用MapReduce去重 MapReduce初级案例(2):使用MapReduce数据排序 MapReduce初级案例(3):使用MapReduce实现平均成绩 通过上面三个例子,也是我们验证前面所理解的内容。 Hadoop开发环境搭建及map-reduce开发实例讲解视频下载 6.mapreduce应用 MapReduce在压力测试中的应用 这里在增加几篇: 新手指导:MapReduce中的分区方法Partitioner 新手指导:mapreduce的key与value输入输出参数为什么会让你迷惑 新手指导:让你真正了解mapreduce中map函数与reduce函数功能及key与value的含义 通过Wordcount实例解析map函数及reduce函数执行过程 总结:如果已经把上面的文章都看过了,那么你对mapreduce如果说还不透彻,但是已经感觉对mapreduce会有自己的看法了。并且产生的各种问题,都有了自己的答案。 --------------------------------------------------------------------------------------------------- 开发方式有两种,但是其实本质是一样的,第一种方式只能操作hdfs,对于操作mapreduce,可能会遇到权限问题。所以可以采用第二种方式。也就是下面这篇所介绍的开发方式 --------------------------------------------------------------------------------------------------- 我们该如何学习hdfs: 这里给我们一个初步的概念 初步了解之后,我们就需要了解它的组成,为了更好的使用它,我们就需要了解他的优点与缺点。 HDFS可以理解为数据库,因为我们既可以通过sql直接操作数据库,亦可以通过编程接口,通过编程语言来操作。那么HDFS则是可以通过shell来操作。 ,同样hsfs的编程接口可以通过下面来了解: 为了节省空间,我们还可以对hdfs数据进行压缩: 上面可以说是我们已经有了一定的了解,但是有的同学,想系统的了解,这里给大家提供一些资料。 HDFS必读书籍:HDFS-Hadoop分布式文件系统深度实践 Hadoop技术内幕 深入解析HADOOP COMMON和HDFS架构设计与实现原理大全1-9章 深入浅出Hadoop实战开发(HDFS实战图片、MapReduce、HBase实战微博、Hive应用) ----------------------------------------------------------------------------------------------------------------- hadoop生态系统 hadoop生态系统内容还是比较多的,但是最常用的是hive,hbase,所以这里对他们也总结一下: 上面需要说明的是hive默认数据库并不是mysql,但是因为默认数据库存在局限,所以最好使用mysql。 安装完毕,那么我们就需要练练手了,可以根据下面内容 Hadoop Hive sql语法详解1-认识hive及DDL操作 Hadoop Hive sql语法详解3--DML 操作:元数据存储 Hadoop Hive sql语法详解4--DQL 操作:数据查询SQL Hadoop Hive sql语法详解5--HiveQL与SQL区别 这里面包含了加载数据、查询数据等各种操作。 上面基本属于实战类型,我们还需要高级进阶,我们需要了解里面的原理,我们需要知道遇到问题,该如何解决。 原理大致懂了,基本操作会了,我们可能又有了更进一步的认识,那么hive如何结合hadoop,hbase发挥作用,该如何发挥它的实际意义,被我们所用。 首先我们使用hive的时候,很多都与hbase相结合,这样发挥hive的长处,在各种查询数据方面相比hbase使用更方便。 上面是与hbase结合使用,那么我们该如何与编程语言向结合,可以参考下面内容: Hive:用Java代码通过JDBC连接Hiveserver介绍 上面或许你已经对hive有所了解,下面的面试及遇到的问题,大家可参考 面试题:分别使用Hadoop MapReduce、hive统计手机流量 (暂时到此,以后更新) 如果到了这个地方。后面的内容你可以在看看视频。 通过以上视频,搭建环境和开发环境都没有问题。以后有时间咱们可以再次展开和讨论。 相关文章推荐: |
零基础学习hadoop到上手工作线路指导初级篇:hive及mapreduce的更多相关文章
- 零基础学习hadoop到上手工作线路指导初级篇:hive及mapreduce(转)
零基础学习hadoop到上手工作线路指导初级篇:hive及mapreduce:http://www.aboutyun.com/thread-7567-1-1.html mapreduce学习目录总结 ...
- 零基础学习hadoop到上手工作线路指导(编程篇)
问题导读: 1.hadoop编程需要哪些基础? 2.hadoop编程需要注意哪些问题? 3.如何创建mapreduce程序及其包含几部分? 4.如何远程连接eclipse,可能会遇到什么问题? 5.如 ...
- 零基础学习hadoop到上手工作线路指导(中级篇)
此篇是在零基础学习hadoop到上手工作线路指导(初级篇)的基础,一个继续总结. 五一假期:在写点内容,也算是总结.上面我们会了基本的编程,我们需要对hadoop有一个更深的理解: hadoop分为h ...
- [学习线路] 零基础学习hadoop到上手工作线路指导(初级篇)
about云课程最新课程Cloudera课程 零基础学习hadoop,没有想象的那么困难,也没有想象的那么容易.在刚接触云计算,曾经想过培训,但是培训机构的选择就让我很纠结.所以索性就自己学习了. ...
- 零基础学习hadoop到上手工作线路指导(初级篇)
零基础学习hadoop,没有想象的那么困难,也没有想象的那么容易.在刚接触云计算,曾经想过培训,但是培训机构的选择就让我很纠结.所以索性就自己学习了.整个过程整理一下,给大家参考,欢迎讨论,共同学习. ...
- 零基础学习hadoop到上手工作线路指导
零基础学习hadoop,没有想象的那么困难,也没有想象的那么容易.在刚接触云计算,曾经想过培训,但是培训机构的选择就让我很纠结.所以索性就自己学习了.整个过程整理一下,给大家参考,欢迎讨论,共同学习. ...
- 零基础学习Hadoop
零基础学习hadoop,没有想象的那么困难,也没有想象的那么容易.在刚接触云计算,曾经想过培训,但是培训机构的选择就让我很纠结.所以索性就自己学习了.整个过程整理一下,给大家参考,欢迎讨论,共同学习. ...
- 零基础学习hadoop开发所必须具体的三个基础知识
大数据hadoop无疑是当前互联网领域受关注热度最高的词之一,大数据技术的应用正在潜移默化中对我们的生活和工作产生巨大的改变.这种改变给我们的感觉是“水到渠成”,更为让人惊叹的是大数据已经仅仅是互联网 ...
- salesforce 零基础学习(五十二)Trigger使用篇(二)
第十七篇的Trigger用法为通过Handler方式实现Trigger的封装,此种好处是一个Handler对应一个sObject,使本该在Trigger中写的代码分到Handler中,代码更加清晰. ...
随机推荐
- CGI-FASTCGI-PHPFPM
随意记录,摘自知乎 原文链接:https://segmentfault.com/q/1010000000256516 首先,CGI是干嘛的?CGI是为了保证web server传递过来的数据是标准格式 ...
- IDEA.环境
1.下载: https://www.jetbrains.com/idea/download/#section=windows 安装的版本是:Ultimate:ideaIU-2017.3.3.exe 2 ...
- [PostgreSQL]PostgreSQL数据类型格式化函数——字符串和数值间的转换
详情见官网:http://www.postgres.cn/docs/10/functions-formatting.html PostgreSQL中有以下格式化函数: 函数 返回类型 描述 例子 to ...
- docker自建仓库Registry
因为生产情况下官方容器还是比较慢的,所以会用到自建docker仓库.docker官方提供完整部署仓库的容器,你只需要提供域名证书,把文件系统挂载到容器,一个用户密码文件就可以使用基本的仓库功能了. 启 ...
- HDU 4669 Mutiples on a circle 不知道该归为哪一类。
题意:给你N个珠宝和一个K,每个珠宝上面都有数字,这个珠宝做成项链,把珠宝上的数字拼起来如果可以整除掉K,那么久说这个数字为wonderful value,问你有多少种方案可以组成WONDERFUL ...
- 暗网 tor溯源困难根因——用户的请求会在分布全球的主机随机跳转三次,最终才到达服务器,这就造成了溯源的极其困难
Tor(The Onion Router)可以说是目前最为流行的网络匿名访问技术,用户的请求会在分布全球的主机随机跳转三次,最终才到达服务器,这就造成了溯源的极其困难,从而使得所有的访问者完全没有身份 ...
- Factorialize a Number
计算一个整数的阶乘 如果用字母n来代表一个整数,阶乘代表着所有小于或等于n的整数的乘积. 阶乘通常简写成 n! 例如: 5! = 1 * 2 * 3 * 4 * 5 = 120 当你完成不了挑战的时候 ...
- shiro:10个过滤器;10个jsp标签;5个@注解
10个过滤器 过滤器简称 对应的java类 anon org.apache.shiro.web.filter.authc.AnonymousFilter authc org.apache.shiro. ...
- (转)让IE6/IE7/IE8浏览器支持CSS3属性
原文链接 http://blog.csdn.net/h5_queenstyle12/article/details/50437442 一.下载 搜索下载:ie-css3.htc,它是让IE浏览器支持C ...
- DNSmasq搭建DNS服务器
原文地址:http://jirry.me/2016/04/19/dnsmasq-on-aliyun/ DNSmasq 是一个小巧且方便地用于配置 DNS 和 DHCP 的工具,适用于小型网络,它提供了 ...