文章目录 一 MapReduce概念 1.1 为什么要MapReduce 1.2 MapReduce核心思想 1.3 MapReduce进程 1.4 MapReduce编程规范(八股文) 1.5 MapReduce程序运行流程分析 二 MapReduce理论篇 2.1 Writable序列化 2.1.1 常用数据序列化类型 2.1.2 自定义bean对象实现序列化接口 2.2 InputFormat数据切片机制 2.2.1 FileInputFormat切片机制 2.2.2 CombineTex…
一.云的概念 1.云计算的概念 随时 随地 使用任何设备 获得任何服务 2.趋势 )资料开始回归集中处理(存储大量资料) 随时存取 降低遗失风险 减少传输成本 促进团队协作 )网页变为预设开发平台(网页开放性) 网页是开放标准 浏览器的跨平台特性 web application 的普遍性 )高速计算 平行运算(parallel computing) 分散运算(distribute computing) 多核心程序设计 处理大资料的技能 3.云计算的关键特性 )超大规模 )高可靠度 )高扩充性 )…
假如我们只有3台linux虚拟机,主机名分别为hadoop01.hadoop02和hadoop03,在这3台机器上,hadoop集群的部署情况如下: hadoop01:1个namenode,1个datanode,1个journalnode,1个zkfc,1个resourcemanager,1个nodemanager: hadoop02:1个namenode,1个datanode,1个journalnode,1个zkfc,1个resourcemanager,1个nodemanager: hadoo…
现在是讨论这个问题的不错的时机,因为最近媒体上到处充斥着新的革命所谓“云计算”的信息.这种模式需要利用大量的(低端)处理器并行工作来解决计算问题.实际上,这建议利用大量的低端处理器来构建数据中心,而不是利用数目少的多的高端服务器来构建. 举例来说,IBM和Google已经宣布计划用1000台处理器构建的集群提供给部分大学,传授学生们如何使用MapReduce工具在这些集群上编程.加利福尼亚大学伯克利分校甚至打算开设使用MapReduce框架编程的课程.我们对MapReduce支持者大肆炒作它如何…
面向对象软件开发的优点有哪些? 答:开发模块化,更易维护和修改:代码之间可以复用:增强代码的可靠性.灵活性和可理解性. 多态的定义? 答:多态是编程语言给不同的底层数据类型做相同的接口展示的一种能力.一个多态类型上的操作可以应用到其他类型的值上面. 继承的定义? 答:继承给对象提供了从基类获取字段和方法的能力.继承提供了代码的重用行,也可以在不修改类的情况下给现存的类添加新特性 抽象的定义?抽象和封装的不同点? 答:抽象是把想法从具体的实例中分离出来的步骤,因此,要根据他们的功能而不是实现细节来…
Hadoop之HDFS的概念及用法 1.概念介绍 Hadoop是Apache旗下的一个项目.他由HDFS.MapReduce.Hive.HBase和ZooKeeper等成员组成. HDFS是一个高度容错的分布式文件系统.他能够提高吞吐量的数据访问,适合存储海量的大文件. HDFS由四部分构成:HDFS client.NameNode.DataNode.Secondary NameNode. 各组件概念:   1.HDFS client 2.NameNode 用于维护集群内元数据,也就是保存文件存…
环境:3结点集群 192.168.0.1192.168.0.2192.168.0.3 1 配置root用户服务期间免密登录 参考:https://www.cnblogs.com/barneywill/p/10271679.html 2 安装ansible 参考:https://www.cnblogs.com/barneywill/p/10263278.html 3 在所有服务器上创建hadoop用户,配置hadoop用户服务期间免密登录 参考:https://www.cnblogs.com/ba…
比较惭愧,博客很久(半年)没更新了.最近也自己搭了个博客,wordpress玩的还不是很熟,感兴趣的朋友可以多多交流哈!地址是:http://www.leocook.org/ 另外,我建了个QQ群:305994766,希望对大数据.算法研发.系统架构感兴趣的朋友能够加入进来,大家一起学习,共同进步(进群请说明自己的公司-职业-昵称). 1.应用程序角度进行优化 1.1.减少不必要的reduce任务若对于同一份数据需要多次处理,可以尝试先排序.分区,然后自定义InputSplit将某一个分区作为一…
MapReduce入门 Mapreduce思想 概述 MapReduce的思想核心是分而治之,适用于大量复杂的任务处理场景(大规模数据处理场景). 最主要的特点就是把一个大的问题,划分成很多小的子问题,并且每个小的子问题的求取思路与我们大问题的求取思路一样. 最主要有两个阶段:一个map阶段,负责拆分:一个是reduce阶段,负责聚合. 思想模型 一个文件切块(Split)对应一个mapTask mapreduce没有block的概念,默认一个切块(Split)对应block块的大小(128M)…
MapReduce增强(下) MapTask运行机制详解以及MapTask的并行度 MapTask运行流程 第一步:读取数据组件InputFormat(默认TextInputFormat)会通过getSplits方法,对输入目录中的文件(输入目录也就是TextInputFormat的Path)进行逻辑切片得到splits.     ps. getSplits方法属于FileInputFormat,该方法返回的就是一个文件有多少个切片,一个切片对应一个maptask的任务.        切片大小…