Hadoop
文章平均质量分 95
Yannick_J
Yes-亚历山大的陀螺
展开
-
测试flink实时流系列(三):搭建flink节点服务器
一、在服务器节点安装及运行Hadoop安装和运行单节点Hadoop请参考:搭建Hadoop(v2.7.1)单节点伪模式, 集群(2 节点)及 集群(5 节点)这里需要运行hadoop,因为我们跑的flink on yarn模式。二、在服务器节点安装及运行flink1. 下载并解压flink软件:flink-1.0.3适配hadoop2.7和scala_2.11的flink版本下...原创 2019-12-10 16:26:25 · 291 阅读 · 0 评论 -
测试flink实时流系列(二):搭建DataGen数据生成节点服务器(Hadoop + HiBench)
一、在服务器节点安装及运行Hadoop安装和运行单节点Hadoop请参考:搭建Hadoop(v2.7.1)单节点伪模式, 集群(2 节点)及 集群(5 节点)二、在服务器节点安装运行HiBench下载HiBench-7.0,解压后进入HiBench-7.0,修改conf/目录下相应的配置文件:1. 修改hadoop.conf配置文件重点关注参数hibench.hadoop.ho...原创 2019-12-10 16:17:07 · 595 阅读 · 0 评论 -
HDFS读数据分析(一):用户的读文件代码是怎么走到HDFS,获取block位置信息的?
一、前言1. 版本:Hadoop 源码版本: Version 2.7.12. HDFS读一个文件的流程图二、分析1. 开始案例分析:在使用Java读取一个文件系统中的一个文件时,我们会首先构造一个DataInputStream对象,然后就能够从文件中读取数据。对于存储在HDFS上的文件,也对应着类似的工具类,但是底层的实现逻辑却是非常不同的。我们先从使用DFSClient...原创 2019-01-28 11:01:13 · 894 阅读 · 0 评论 -
Resource Localization in YARN: Deep Dive
Resource Localization in YARN: Deep Diveby:Vinod Kumar VavilapalliThis post is authored by Omkar Vinit Joshi with Vinod Kumar Vavilapalli and is the ninth post in the multi-part blog series onApa...转载 2019-04-08 16:36:38 · 460 阅读 · 0 评论 -
ContainerLocalization的分析[YARN]
一、前言1. 版本:Hadoop 源码版本:Version 2.7.1二、前言Yarn的分布式缓存类似于MRv1中的DistributedCache,是一种分布式文件分发与缓存机制。Yarn的分布式缓存工作流程如下:注意,这里的分布式缓存并不是将文件缓存到集群各个节点的内存中,而是将文件缓存到各个节点的本地磁盘上;Public, Private和 Applicat...原创 2019-04-04 21:27:05 · 220 阅读 · 0 评论 -
分析 在 YARN 模式下的 Spark 里 BlockManager 的 LOCAL_DIRS
一、前言1. 版本:Hadoop 源码版本:Version 2.7.1Spark源码版本:Version 2.4.1二、分析1. Spark 里 BlockManager 的 LOCAL_DIRS在 DiskBlockManager里的成员变量 localDirs 代表了BlockManager 写磁盘的本地目录列表,该成员变量的 DiskBlockManager...原创 2019-04-02 21:55:43 · 1738 阅读 · 0 评论 -
HDFS读数据分析(二):获取到一个被读文件的meta信息后(block信息等),是怎么读这些block的?
一、前言1. 版本:Hadoop 源码版本: Version 2.7.12. HDFS读一个文件的流程图二、回顾区用户的App通过调用流程FileSystem.open->DistributedFileSystem.open->DFSClient.open->new DFSInputStream()后,获取到了要读取文件的所有blocks信息(文件长度、文件...原创 2019-02-14 14:18:43 · 1282 阅读 · 0 评论 -
HDFS读数据分析(三):怎么样单独打开HDFS几个模块的TRACE开关?
一、前言1. 版本:Hadoop 源码版本:Version 2.7.1二、内容由于HDFS属于Hadoop应用程序管理,可以修改Hadoop/etc/hadoop/log4j.properties。如果你使用Spark做引擎,这个不影响Spark/conf/log4j.properties配置。1)单独打开HDFS几个读模块的TRACE log,在Hadoop/etc/hado...原创 2019-03-26 15:02:19 · 419 阅读 · 0 评论 -
HDFS读数据分析(四):用Spark做计算引擎时,是否会根据HDFS数据本地性来分配Task到特定的Datanode
一、前言1. 版本:Hadoop 源码版本: Version 2.7.1二、内容Spark的DAGScheduler是否会根据RDD的Partition包含的数据本地性,来分配Task到特定的Datanode来处理?代码在哪里?代码在TaskSetManager.computeValidLocalityLevels函数里,它会赋值TaskSetManager.myLocality...原创 2019-01-30 10:24:16 · 357 阅读 · 0 评论 -
一路走好MapReduce
1. 去年国庆期间(Oct. 2018)Cloudera和Hortonworks宣布合并:对Hadoop的一记重创!大数据领域的两大巨头公司Cloudera和Hortonworks宣布平等合并,Cloudera以股票方式收购Hortonworks,Cloudera股东最终获得合并公司60%的股份。 这笔交易意味着Hadoop市场再也无法维持两大竞争对手对峙的状态了。2. 昨天(May 29, ...原创 2019-05-30 14:25:23 · 222 阅读 · 0 评论 -
Hive 工作流程源码分析
1. 简介主要介绍Hive的parse enginer(包括HQL->TaskTree)Hive版本:1.2.1HiBench 版本: v6Hadoop 版本: 2.7.12. Hive 与 传统RDBMS的区别 3. Hive架构 4. Hive 源码中3个关键的部分 (version Hive-1.2.1): Hive核心三大组件 ...原创 2019-01-04 13:48:10 · 4552 阅读 · 2 评论 -
Hive 的 HQL 语句:distribute by与group by,order by与sort by 的区别
转载:https://www.cnblogs.com/huxinga/p/7688376.htmldistribute by与group by 的区别都是按key值划分数据 都使用reduce操作 **唯一不同的是,distribute by只是单纯的分散数据,distribute by col – 按照col列把数据分散到不同的reduce。而group by把相同key的数据聚集到一起...转载 2018-09-10 11:27:28 · 7467 阅读 · 0 评论 -
浅析Hadoop下的基础排序算法(HeapSort)
一 前言:1. 语术:· QS: QuickSort。· HS: HeapSort· Hadoop 版本: 基于Version 2.7.1代码分析2. 基于数组的堆基于数组的堆的基本知识:节点i的父节点是(i-1)/2, 节点i的左子结点是2i+1,节点i的右子节点为2i+2. 二.内容源代码:/* * License...原创 2018-05-15 10:51:19 · 477 阅读 · 0 评论 -
浅析Hadoop下的基础排序算法(MergeSort)
一 前言:1. 语术:· MS: MergeSort· IS: InsertSort· Hadoop 版本: 基于Version 2.7.1代码分析2. 目的:分析Hadoop的MS排序是否与标准的MS排序有优化或者区别?二.内容源代码: /* * Licensed to the Apache Software F...原创 2018-05-16 14:37:17 · 1462 阅读 · 0 评论 -
描述Map/Reduce框架的清明上河图
描述Map/Reduce框架的清明上河图,我见过的最详细的,没有之一。基于hadoop-r2.7.1-src源代码看过了,很详细。它涵盖了Map/Reduce框架的核心流程(包含了shuffle),涉及到了Map和Reduce阶段的内存优化原理。图片来源:Distributed Systems Architecture, https://0x0fff.com/hadoop-mapred...原创 2018-06-08 17:00:06 · 1835 阅读 · 0 评论 -
浅析MapReduce之PriorityQueue
前言:PriorityQueue.java 在Merger.java 里的主要作用是建立一个小顶堆(调用PriorityQueue.put函数,其实就是upHeap(),它是PriorityQueue的核心函数之一),建成小顶堆后。用户可以调用PriorityQueue.pop 函数取顶(也就是最小值,, 取顶后直接调用downHeap(),它是PriorityQueue的另一个核心函数)。下面按...原创 2018-06-08 14:38:26 · 257 阅读 · 0 评论 -
搭建Hadoop(v2.7.1)单节点伪模式, 集群(2 节点)及 集群(5 节点)
一 前言:目的: 熟悉一下Hadoop 集群搭建的过程, 哪怕 2 台机器也来趟一遍。通过学习集群的 log,熟悉集群的流程。为以后有条件搭建和维护上百台的集群环境(我想应该是没这个可能的),迈出一小步。二 先来熟悉一下 单节点伪模式(standalone)搭建步骤:1) 安装ssh和 rsyncsudo yum install opensshsudo yum ins...原创 2018-07-19 10:07:48 · 1047 阅读 · 0 评论 -
浅析Hadoop 的压缩
一、 从 Hadoop 的 Map/Reduce 框架 处理流程,有如下 三个阶段 和 压缩 相关1. MAP 的 输入数据为压缩格式的文件,这个在FileInput的时候会解压。2. MapOutput 写本地文件系统阶段,这个需要配置,默认是false, 不压缩。mapreduce.map.output.compress.codec org.apache.hadoop.io.compre...原创 2018-07-09 12:40:17 · 200 阅读 · 0 评论 -
浅析Hadoop 之 HDFS 的 磁盘配置(包含读写策略)
一、前言:玩个Hadoop 简单配置的同学都知道core-site.xml 和 hdfs-site.xml里有配置 tmp 数据的目录 和 实际数据 data 的目录,那么这些目录在真正任务运行时,磁盘(集群下每个Node多块磁盘时)读写策略 是怎么 选择的呢?二 、相关概念介绍:1. core-site.xml里配置临时数据存放的目录,也可以是临时运行的目录hadoop.tmp.dir /tmp...原创 2018-07-11 14:15:38 · 4457 阅读 · 0 评论 -
Hadoop自动化测试--磁盘自动挂载到指定目录篇
一、前言在完成Hadoop集成环境搭建(https://blog.csdn.net/don_chiang709/article/details/80647927)后,需要测试Terasort 等case 的performance。由于集群环境下,为了降低磁盘的iowait,每个datanode标配了1个SSD 和 4个HDD。启动Hadoop前需要自动挂载每个节点的磁盘到指定目录(就是core...原创 2019-04-04 21:28:07 · 553 阅读 · 0 评论 -
Hadoop自动化测试--动态更新 hadoop xml 配置文件 篇
一、前言需要测试 和 对比不同配置下的 performance,然后代码分析原因。这样会比较快找到 影响 performance 的配置。Hadoop 的 配置你知道的,多的不得了。如果不去想实现自动化,类似或者重复的劳动,人会变傻的。二、 需要 解决的问题如下1. 怎么更新、添加 和 删除一个xml 文件属性值?用shell 语言:grep 正则表达式+sed 命令 替换。TMD...原创 2018-08-16 18:09:59 · 1232 阅读 · 0 评论 -
入手 Hive 需要知道的一些概念
一、前言Hive 是什么? 与 HBase有什么不同 ? 为什么安装Hive 需要 安装MySQL?二、 需要 解决的问题如下1. Hive 是什么?Hive是一个基于Hadoop的数据仓库平台, Hive可以看成是从SQL到Map-Reduce的 映射器 。 它的框架图如下: 来张更清晰的图: 2. 与 HBase有什么不同HBase是数据库(处理实时...原创 2019-01-04 13:43:32 · 239 阅读 · 0 评论 -
浅析Hadoop下的基础排序算法(QuickSort)
一 前言:1.语术:QS: QuickSort。 IS: InsertSort HS:HeapSort Hadoop 版本: 基于Version 2.7.1代码分析2. QS排序思想回顾:两个索引 i 和 j 分别从左右两端进行扫描,并让索引i扫描到大于等于分割基数为止,索引j扫描到小于等于分割基数为止,然后交换两个元素,重复这个过程直到两个索引相遇;...原创 2018-05-14 15:52:18 · 955 阅读 · 0 评论