摘要: 一、Hive概述 1.Hive简介 Hive数据仓库软件有助于使用SQL读取、编写和管理驻留在分布式存储中的大型数据集。提供了命令行工具和JDBC驱动程序以将用户连接到Hive。 Hive可以将SQL语句自动转化为Mapreduce程序,节省了手写框架的困难。 2.Hive优缺点 优点:1)操作接口 阅读全文
posted @ 2019-04-09 10:16 给你一个公主抱 阅读(865) 评论(0) 推荐(0) 编辑
摘要: 一、影响MR程序效率的因素 1.计算机性能: CPU、内存、磁盘、网络, 计算机的性能会影响MR程序的速度与效率 2.I/O方面 1)数据倾斜(代码优化) 2)map和reduce数量设置不合理(通过配置文件后代码中设置) 3)map运行时间过长,导致reduce等待时间过长 4)小文件过多(浪费元 阅读全文
posted @ 2019-04-08 10:49 给你一个公主抱 阅读(566) 评论(0) 推荐(0) 编辑
摘要: 一、Hadoop的数据压缩 1.概述 在进行MR程序的过程中,在Mapper和Reducer端会发生大量的数据传输和磁盘IO,如果在这个过程中对数据进行压缩处理,可以有效的减少底层存储(HDFS)读写的字节数,,并且通过减少Map和Reduce阶段数据的输入输出来提升MR程序的速度,提高了网络带宽和 阅读全文
posted @ 2019-04-08 10:19 给你一个公主抱 阅读(404) 评论(0) 推荐(0) 编辑
摘要: 一、Mapjoin案例 1.需求:有两个文件,分别是订单表、商品表, 订单表有三个属性分别为订单时间、商品id、订单id(表示内容量大的表), 商品表有两个属性分别为商品id、商品名称(表示内容量小的表,用于加载到内存), 要求结果文件为在订单表中的每一行最后添加商品id对应的商品名称。 2.解决思 阅读全文
posted @ 2019-04-08 01:21 给你一个公主抱 阅读(1671) 评论(0) 推荐(0) 编辑
摘要: 一、自定义InputFormat InputFormat是输入流,在前面的例子中使用的是文件输入输出流FileInputFormat和FileOutputFormat,而FileInputFormat和FileOutputFormat它们默认使用的是继承它们的子类TextInputFormat和Te 阅读全文
posted @ 2019-04-01 20:54 给你一个公主抱 阅读(1266) 评论(0) 推荐(0) 编辑
摘要: 一、shuffle机制概述 shuffle机制就是发生在MR程序中,Mapper之后,Reducer之前的一系列分区排序的操作。shuffle的作用是为了保证Reducer收到的数据都是按键排序的。 二、shuffle机制的流程 还是按照上个随笔MR整体流程的需求来做参考: 1.Mapper中con 阅读全文
posted @ 2019-03-29 00:35 给你一个公主抱 阅读(676) 评论(0) 推荐(0) 编辑
摘要: 一、辅助排序 需求:先有一个订单数据文件,包含了订单id、商品id、商品价格,要求将订单id正序,商品价格倒序,且生成结果文件个数为订单id的数量,每个结果文件中只要一条该订单最贵商品的数据。 思路:1.封装订单类OrderBean,实现WritableComparable接口; 2.自定义Mapp 阅读全文
posted @ 2019-03-28 21:47 给你一个公主抱 阅读(282) 评论(0) 推荐(0) 编辑
摘要: 一、MR排序的分类 1.部分排序:MR会根据自己输出记录的KV对数据进行排序,保证输出到每一个文件内存都是经过排序的; 2.全局排序; 3.辅助排序:再第一次排序后经过分区再排序一次; 4.二次排序:经过一次排序后又根据业务逻辑再次进行排序。 二、MR排序的接口——WritableComparabl 阅读全文
posted @ 2019-03-24 23:11 给你一个公主抱 阅读(1282) 评论(0) 推荐(0) 编辑
摘要: 一、Maptask并行度与决定机制 1.一个job任务的map阶段的并行度默认是由该任务的大小决定的; 2.一个split切分分配一个maprask来并行处理; 3.默认情况下,split切分的大小等于blocksize大小; 4.切片不是mapper类中对单词的切片,而是对每一个处理文件的单独切片 阅读全文
posted @ 2019-03-24 22:43 给你一个公主抱 阅读(682) 评论(0) 推荐(0) 编辑
摘要: 一、Hadoop数据序列化的数据类型 Java数据类型 => Hadoop数据类型 int IntWritable float FloatWritable long LongWritable double DoubleWritable String Text boolean BooleanWrita 阅读全文
posted @ 2019-03-24 21:48 给你一个公主抱 阅读(295) 评论(0) 推荐(0) 编辑