Hadoop
文章平均质量分 55
TomAndersen
新目标:喜欢上读书
展开
-
Hive之配置和使用LZO压缩
前言OS:CentOS 7Hive:2.3.0Hadoop:2.7.7MySQL Server:5.7.10Hive官方手册:LanguageManual LZO在配置Hive使用lzo压缩功能之前,需要保证Hadoop集群中lzo依赖库的正确安装,以及hadoop-lzo依赖的正确配置,可以参考:Hadoop配置lzo压缩温馨提示:Hive自定义组件打包时,不要同时打包依赖,避免各种版本冲突,只将额外的依赖添加到classpath中即可配置过程一、配置H原创 2020-06-21 22:40:24 · 4076 阅读 · 1 评论 -
Hive之中文乱码问题
前言Hive:2.3.0Hadoop:2.7.7MySQL Server:5.7.10OS:CentOS 7本文主要演示如何解决Hive注释内容(即COMMENT)中出现中文乱码的问题原因Hive中的表字段等注释信息都存储在元数据库metastore中(本文中的元数据存储在MySQL的hive_db数据库中),当使用desc命令查看表字段的注释信息时,Hive会直接读取元数据库中的hive_db.COLUMNS_V2表,同样的修改元数据库中此表中的内容会直接反馈到desc的查询结果中。故原创 2020-06-13 17:21:50 · 1333 阅读 · 0 评论 -
Hadoop配置lzo压缩
前言OS:CentOS 7hadoop:2.7.7lzo:lzo-2.10Apache Maven:3.6.0JDK:1.8.0_221hadoop-lzo是一个围绕lzo压缩算法实现的Maven项目,基于hadoop提供的API实现了lzo压缩算法的编解码器,以及其他的一些自定义hadoop组件,本文主要演示如何编译此Git项目,并配置到hadoop集群中,实现lzo算法在集群中的使用由于Hadoop和hadoop-lzo中目前都未集成lzo算法函数库,因此在编译hadoop-lzo项目之原创 2020-06-11 19:57:12 · 1498 阅读 · 2 评论 -
Linux之配置lzo压缩
前言OS:CentOS 7lzo:lzo-2.10make:4.1PS: 如果未安装make,则可以执行sudo yum -y groupinstall "Development Tools"或sudo apt-get -y install build-essential来安装Linux环境下基本开发编译工具包,其中就包含了gcc、g++、make等基本开发工具安装步骤一、下载LZO源码官网地址lzo-2.10 下载地址二、编译LZO源码1)解压源码压缩原创 2020-06-11 19:54:54 · 1581 阅读 · 0 评论 -
YARN之配置Timeline服务
前言hadoop:2.7.7Timeline Service 官方文档简介Timeline Server基于YARN运行,能够存储和检索应用程序的当前和历史信息,其主要有两个职责:1)存储应用程序的特定信息收集和检索指定应用程序或者框架的某些信息。例如,Hadoop的MR框架会产生像是Map task数量、Reduce task数量、Counter等信息,应用开发人员可以通过TimelineClient,在Application Master或者Container中将特定的信息发送到Tim原创 2020-06-08 11:39:25 · 6439 阅读 · 0 评论 -
YARN和MapReduce内存分配计算公式
前言hadoop:2.7.7本文内容均来自:HDP Command Line Installation 2.6.5 中第1.10节HDP(Hortonworks Data Platform)是最常见的Hadoop的第三方发行版之一,类似的Hadoop发行版还有CDH、MapR等计算YARN和MapReduce的内存需求在Hadoop集群中,YARN管理着集群中的每个节点上的可用资源,并为运行在集群中的应用程序(如MapReduce)提供需要的资源,其中Container是YARN中最小的资源原创 2020-06-08 11:36:16 · 2718 阅读 · 1 评论 -
Hive中使用count(1)或count()统计行数时结果为0的原因
前言Hive:2.3.0Hadoop:2.7.7JDK:1.8.0_221原因因为执行count(1)或count(*)统计行数时,默认会从Hive的元数据库中查询 rowsNum 对应值作为结果返回,一般情况下,如果是使用加载数据文件load data的方式填充表数据,则不会收集此统计信息,Hive收集的统计信息与收集时机见官方文档。解决方案:方案一:使用ANALYZE命令手动更新表统计信息,如:ANALYZE TABLE Table1 COMPUTE STATISTICS;原创 2020-06-04 23:31:22 · 4755 阅读 · 0 评论 -
Hive中配置Apache Tez运行MR
前言Hive:2.3.0Hadoop:2.7.7JDK:1.8.0_221Tez:0.9.1本次配置Apache Tez只是用于Hive执行MR任务,而非Hadoop全局配置,并且使用的是已编译二进制压缩包Hadoop-Tez兼容性:Apache Tez 0.9.0中使用了部分Hadoop 2.7.0开发包,因此如果Hadoop是2.7.x版本,建议使用0.9.0及更新版本的Tez,避免发生兼容性问题。而对于Hadoop 2.6.x版本,官方建议使用Tez 0.8.3及更新版本的TezHiv原创 2020-06-04 23:30:50 · 1951 阅读 · 1 评论 -
Hive On Tez报错汇总
前言Hive:2.3.0Hadoop:2.7.7JDK:1.8.0_221Tez:0.9.1报错一报错内容:在Hive下使用Tez引擎执行MR Job时报错:Container killed on request. Exit code is 143问题分析:从Container killed on request这几个关键字就可以猜测,Container在非正常结束时被kill,很有可能就是Container使用的内存超出Container限制导致的。查看Hive运行日志:Hiv原创 2020-06-04 23:24:28 · 1767 阅读 · 0 评论 -
Hadoop源码解析之Mapper数量计算公式
前言据说,自0.20.0版本开始,Hadoop同时提供了新旧两套MapReduce API,并在后续版本中也同时支持这两种API的使用。新版本MR API在旧的基础进行了扩展,也制定了新的split计算方式。新版本MR API在包org.apache.hadoop.mapreduce及其子包中,而旧版本MR API则在包org.apache.hadoop.mapred及其子包中。本文主要从源码角度,简单谈谈新旧MR API中常用的FileInputFormat类(TextInputFormat的父类)原创 2020-05-29 23:08:28 · 393 阅读 · 0 评论 -
Hive中distinct和group by去重性能对比
前言操作系统:CentOS 7hadoop:2.7.7hive:2.3.0实验目的:本文主要测试在某字段各种不同值个数情况下,记录对此字段其使用DISTINCT/GROUP BY去重的查询语句执行时间,对比两者在不同场景下的去重性能实验表格:表名记录数查询字段不同值个数DISTINCTGROUP BYtab_11000003tab_210000010000实验过程1)创建测试用表drop table if exists tab_1;原创 2020-05-29 11:34:39 · 690 阅读 · 0 评论 -
Hive之配置使用snappy压缩
前言操作系统:CentOS 7hadoop:2.7.7hive:2.3.0Hive中配置snappy压缩,可以分别在Mapper输出阶段和Reducer输出阶段使用压缩算法。也可以将压缩后数据文件加载到表中用于查询,Hive会通过后缀名自动识别对应的压缩格式,并在查询时进行解压,但需要保持数据文件和表格式相同,否则只会显示结果全为NULL查看本机目前可供Hadoop使用的压缩算法使用以下命令,可以查看是否有相应压缩算法的库,如果显示为false,则需要额外安装(CentOS原创 2020-05-28 22:34:49 · 3162 阅读 · 3 评论 -
Hive自定义表生成函数UDTF的自定义实现Demo
前言Hive:2.3.0由于实际生产环境中,Hive自带的内建函数无法覆盖所有的应用场景,所以时常需要进行自定义函数User-Defined Function(UDF),以满足实际生产需求。本文主要演示如何实现自定义表生成函数User-Defined Table-Generating Function(UDTF),此类函数的特点是一进多出创建Hive函数时,如果指定为临时的(temporary)则可以在所有数据库下使用,但只能在当前会话中使用,退出后自动删除;如果指定为持久的(per原创 2020-05-28 21:15:20 · 659 阅读 · 0 评论 -
Hadoop之HDFS集群吞吐量测试
前言Hadoop官方在Hadoop安装包的share/hadoop/mapreduce/路径下提供了TestDFSIO工具,专门用于测试HDFS的吞吐量Hadoop版本:2.7.71)HDFS写性能测试测试命令示例:hadoop jar /opt/module/hadoop-2.7.7/share/hadoop/mapreduce/hadoop-mapreduce-client-jo...原创 2020-03-23 11:49:36 · 1305 阅读 · 0 评论 -
Flume之HDFS Sink使用案例
前言操作系统:CentOS 7Java版本:1.8.0_221Flume版本:1.8.0HDFS版本:2.7.7Flume agent配置:Netcat TCP Source、Memory Channel、HDFS Sink具体步骤a) 拷贝Hadoop相关jar包至flume/lib/路径下在hadoop-2.7.7/share/路径下找到以下对应jar包,并将其拷贝至fl...原创 2020-03-05 11:39:58 · 964 阅读 · 0 评论 -
Hadoop之配置历史服务器并开启日志聚集
Hadoop之配置历史服务器并开启日志聚集1. 前言Hadoop中设置任务历史服务器并开启日志聚集的必要性:一般情况下在YARN的Web UI中只能查看本次YARN运行期间执行的Application的首个Container的运行日志,即ApplicationMaster的运行日志(MR任务一般是分成多个task通过多个Container分别执行,这些Container分布在集群的任意主机上...原创 2020-02-26 22:24:56 · 2845 阅读 · 1 评论 -
Hadoop中HA模式配置(HDFS HA&YARN HA)
1.前言Hadoop版本:2.7.7Zookeeper版本:3.4.14Java版本:1.8.0_221Hadoop HA模式分为HDFS HA(NameNode HA)和YARN HA(ResourceManager HA)两个部分在本次配置中同时配置了HDFS HA和YARN HA下的自动故障转移Automatic Failover,以及历史服务器JobHistoryServer...原创 2020-02-26 20:58:17 · 770 阅读 · 0 评论 -
VMware中搭建Hadoop集群简易步骤(文字版)
VMware中搭建Hadoop集群(文字版)所用各工具版本:系统镜像:CentOS-7-x86_64-DVD-1810VM version:VMware Workstation Pro15Java version:jdk-8u221-linux-x64Hadoop version:hadoop-2.7.7准备步骤:下载CentOS-7镜像、下载匹配的Sun JDK包、下载匹配的...原创 2020-02-09 23:18:25 · 1276 阅读 · 0 评论 -
Hadoop集群极简入门基础配置教程
1. 核心配置文件配置文件在 /hadoop-2.7.7/etc/hadoop 路径下(1)配置core-site.xml编辑 core-site.xml 文件,在configuration中插入配置信息,具体配置如下所示:<configuration> <!-- 指定HDFS中NameNode的地址 --> <property> ...原创 2020-02-08 16:49:59 · 334 阅读 · 0 评论 -
Failed to setup local dir C:/hadoop-2.7.7/workplace/tmp/nm-local-dir, which was marked as good
Windows平台下向本地Hadoop集群提交作业时报错:Failed to setup local dir C:/hadoop-2.7.7/workplace/tmp/nm-local-dir, which was marked as good.问题: 如题;平台及版本: Windows10+JDK1.8.0_191+Hadoop2.7.7;个人的解决方案: 使用管理员身份命令行启动Had...原创 2019-09-27 21:28:31 · 1381 阅读 · 0 评论