![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
hadoop
jason2016y
这个作者很懒,什么都没留下…
展开
-
NameNode启动过程详细剖析
NameNode启动过程详细剖析NameNode中几个关键的数据结构FSImageNamenode会将HDFS的文件和目录元数据存储在一个叫fsimage的二进制文件中,每次保存fsimage之后到下次保存之间的所有hdfs操作,将会记录在editlog文件中,当editlog达到一定的大小(bytes,由fs.checkpoint.size参数定义)或从上次保存过后一定时间段过后(s...转载 2018-08-13 13:55:35 · 304 阅读 · 0 评论 -
YARN的架构及原理
YARN产生背景 a)JobTracker单点故障 b)JobTracker承受的访问压力大,影响系统的扩展性 c)不支持MapReduce之外的计算框架,比如storm、spark、flink什么是YARN YARN是Hadoop2.0版本引进的资源管理系统,直接从MR1演化而来。 核心思想:将MR1中的JobTracker的资源管理和作业调度两个功能分开,分别由ResourceM...转载 2018-09-03 16:29:45 · 220 阅读 · 0 评论 -
Hadoop中Map端shuffle过程及源码解析
分析的源码是基于Hadoop2.6.0。 官网上面的MapReduce过程 Map端shuffle的过程: 在执行每个map task时,无论map方法中执行什么逻辑,最终都是要把输出写到磁盘上。如果没有reduce阶段,则直接输出到hdfs上,如果有有reduce作业,则每个map方法的输出在写磁盘前线在内存中缓存。每个map task都有一个环状的内存缓冲区,存储着map的输出结果,在...转载 2018-09-21 13:32:18 · 330 阅读 · 0 评论 -
彻底理解MapReduce shuffle过程原理
MapReduce的Shuffle过程介绍 Shuffle的本义是洗牌、混洗,把一组有一定规则的数据尽量转换成一组无规则的数据,越随机越好。MapReduce中的Shuffle更像是洗牌的逆过程,把一组无规则的数据尽量转换成一组具有一定规则的数据。 为什么MapReduce计算模型需要Shuffle过程?我们都知道MapReduce计算模型一般包括两个重要的阶段:Map是映射,负责数据的过滤分发;...转载 2018-09-21 13:48:20 · 244 阅读 · 0 评论 -
用户画像之基本属性信息
#!/bin/sh#线上线下会员手机号allMobileSql="select distinct x_cellphone from(select x_cellphone from sourcedata.s_loy_memberunion allselect mobile as x_cellphone from sourcedata.def_members )temp";#会...原创 2018-09-28 15:55:48 · 4297 阅读 · 0 评论 -
用户画像之线上订单
#!/bin/sh#支付偏好paySql="use tmp;drop table if exists member_pay_prefer;create table member_pay_prefer asselect * from ( select a.*,row_number() over(partition by a.user_id order by a....原创 2018-09-28 15:57:03 · 343 阅读 · 0 评论 -
用户画像之线下订单
#!/bin/sh#最常购买门店orgSql="use tmp;drop table if exists member_offline_org_prefer;create table member_offline_org_prefer asselect * from (select a.*,row_number() over(partition by a.vipcardno ord...原创 2018-09-28 15:58:07 · 360 阅读 · 0 评论 -
hive排序distribute by sort by order by
1. order by Hive中的order by跟传统的sql语言中的order by作用是一样的,会对查询的结果做一次全局排序,所以说,只有hive的sql中制定了order by所有的数据都会到同一个reducer进行处理(不管有多少map,也不管文件有多少的block只会启动一个reducer)。但是对于大量数据这将会消耗很长的时间去执行。 这里跟传统的sql还有一点区别...转载 2018-11-08 10:57:42 · 171 阅读 · 0 评论