
Hadoop
文章平均质量分 62
三劫散仙
唯有学习,可以解忧
展开
-
Hadoop + Hive + Apache Ranger 源码编译记录
由于 CDH(Cloudera's Distribution Hadoop )近几年已经开始收费并限制节点数量和版本升级,最近使用开源的 hadoop 搭了一套测试集群,其中的权限管理组件用到了Apache Ranger,所以记录一下编译打包过程。原创 2024-11-12 11:15:04 · 899 阅读 · 0 评论 -
pyspark 检测任务输出目录是否空,避免读取报错
在跑调度任务时候,有时候子任务需要依赖前置任务的输出,但类似读取 Parquet 或者 Orc 文件时,如果不判断目录是否为空,在输出为空时会报错,所以需要 check 一下,此外Hadoop通常在写入数据时会在目录中生成一个名为_SUCCESS的文件来表示写入操作已成功完成,我们在检测时要排除这个文件。原创 2023-09-26 11:04:21 · 778 阅读 · 0 评论 -
spark外置external shuffle service使用介绍
默认情况下,MR任务shuffle都是由当前任务内部完成的,也就是启动了一个spark job,这个job在内部就可完成整个shuffle流程,也就是实时对接的模式,类似快递小哥送快递给你,到你家楼下打电话给你,不见你面他就一直等着你,直到你来了之后,他把快递亲自交到你的手中,他才可以去干下一件快递的排送,这种模式就是默认shuffle的工作原理。外部独立的shuffle服务的存储可以不占用YARN内部的本地磁盘,使用独立的SSD磁盘或者SSD的云存储再配上100G的网络带宽来加速shuffle处理性能。原创 2023-06-27 20:05:15 · 1802 阅读 · 0 评论 -
spark-3.0.1和hive-1.1.0集成的问题
主jar里面包含了jetty或者spring boot相关的web依赖信息,可能会导致和 hive-1.1.0 自带的jetty冲突。链接: https://pan.baidu.com/s/1ThAjKRznK2CUDaiXYPzKXg 提取码: b0b0。解决办法:单独下载 geronimo-jaspi-2.0.0.jar 包,放入 spark 根目录的 jars 目录里面。原创 2023-04-27 15:47:57 · 373 阅读 · 1 评论 -
Spark与hdfs delegation token过期的排查思路总结
hadoop delegation token的问题相对比较混乱和复杂,简单说下这东西的出现背景,最早的hadoop的因没有的完善的安全机制(安全机制主要包括:认证 + 鉴权,hadoop这里主要是身份认证机制没有),所以导致操作风险比较大,你可以理解只要获取了一台装有hadoop client的机器,就可以任意操作HDFS系统了,深究原因是因为hadoop身份认证机制太薄弱原创 2022-11-09 23:34:25 · 2753 阅读 · 0 评论 -
如何使用Hadoop的Partitioner
[b][color=olive][size=large]Hadoop里面的MapReduce编程模型,非常灵活,大部分环节我们都可以重写它的API,来灵活定制我们自己的一些特殊需求。今天散仙要说的这个分区函数Partitioner,也是一样如此,下面我们先来看下Partitioner的作用:对map端输出的数据key作一个散列,使数据能够均匀分布在各个reduce上进行后续操作,避免产...2014-04-10 17:12:18 · 176 阅读 · 0 评论 -
Hadoop可视化分析利器之Hue
先来看下hue的架构图:[img]http://dl2.iteye.com/upload/attachment/0108/7048/ae2bc982-c44b-3786-b287-76bc357542f5.jpg[/img](1)Hue是什么?Hue是一个可快速开发和调试Hadoop生态系统各种应用的一个基于浏览器的图形化用户接口。(2)Hue能干什么?...2015-05-19 20:17:57 · 1261 阅读 · 0 评论 -
Hadoop2.6.0-cdh5.4.1源码编译安装
[b][color=green][size=large]版本使用范围,大致 与Apache Hadoop编译步骤一致大同小异,因为CDH的Hadoop的本来就是从社区版迁过来的,所以,这篇文章同样适合所有的以Apache Hadoop为原型的其他商业版本的hadoop编译,例如,Cloudera(CDH)的hadoop和Hortonworks(HDP)的的hadoop编译,下面开工:1,环...2015-06-25 21:40:56 · 270 阅读 · 0 评论 -
CDH-Hadoop2.6+ Apache Pig0.15安装记录
1,使用CDH的hadoop里面有对应的组件Pig,但版本较低,所以放弃使用了,直接下载Apache Pig0.15最新的版本(支持Tez,比Hive更容易集成)下载地址:http://archive.apache.org/dist/pig/pig-0.15.0/pig-0.15.0.tar.gz直接下载二进制包即可2,配置Pig的环境变量如下:#Pigexport...2015-06-26 20:06:27 · 194 阅读 · 0 评论 -
hadoop2.2生态系统快速安装脚本
[b][color=green][size=large]对于使用hadoop进行开发的朋友们,可能要自己搭建一套hadoop的运行环境,如果不是经常变动的还好,如果,经常搭建而且还是多台机器,那么我们一个个的安装,就显得有点捉襟见肘了,这也是这个脚本诞生的目的,主要帮助我们在快速搭建hadoop集群,以及安装底层的配置依赖环境如JDK,Maven,Ant等,在安装hadoop前,还有一些关于lin...2014-09-23 15:08:55 · 143 阅读 · 0 评论 -
Hadoop的Map Sied Join
[b][color=olive][size=large]散仙,在有关Hadoop的上篇博客里,给出了基于Reduce侧的表连接,今天,散仙,就再来看下如何在Map侧高效完成的join,因为在reduce侧进行join在shuffle阶段会消耗大量的时间,如果在Map端进行Join,那么就会节省大量的资源,当然,这也是有具体的应用场景的。 使用场景:一张表十分小、一张表很大。 用法:...2014-04-24 21:06:12 · 145 阅读 · 0 评论 -
Hadoop的SemiJoin
[b][color=green][size=large]散仙,在前两篇博客里,写了关于Hadoop的Map侧join和Reduce的join,今天我们就来在看另外一种比较中立的Join。SemiJoin,一般称为半链接,其原理是在Map侧过滤掉了一些不需要join的数据,从而大大减少了reduce的shffule时间,因为我们知道,如果仅仅使用Reduce侧连接,那么如果一份数据中,存...2014-04-25 20:20:54 · 295 阅读 · 0 评论 -
Hue+Hive临时目录权限不够解决方案
[size=medium]安装[url=http://qindongliang.iteye.com/blog/2212619]Hue[/url]后,可能会分配多个账户给一些业务部门操作hive,虽然可以正常写SQL提交任务,但是由于不同账户在生成MR任务时写入的临时文件,导致临时目录权限改变,假如下次有需要重启hiveserver2时,会报下面的一个异常:[/size][code="jav...2016-06-14 10:40:39 · 1144 阅读 · 0 评论 -
Hadoop+Maven项目打包异常
[size=large]先简单说下业务:有一个单独的模块,可以在远程下载Hadoop上的索引,然后合并压缩,最后推送到solr服务器上原来使用的是Ant打包,外部的jar是在执行主体的jar时cp进环境变量的,所以没有出现今天要说的这个问题,伪代码如下:先把所有外部的jar的路径,拼接好一个字符串path,然后将path传入下面执行的代码java -cp path co...2015-08-11 19:36:54 · 228 阅读 · 0 评论 -
驭象者之Apache Oozie
(1)Apache Oozie是什么?Oozie在英语中的释义指的是:驯象人,驭象者(多指缅甸那边的俗称),这个比喻相对与它的功能来说,还是很恰当的。Apache Oozie是一个用来管理Hadoop任务的工作流调度系统,是基于有向无环图的模型(DAG)。Oozie支持大多数的Hadoop任务的组合,常见的有Java MapReduce,Streaming map-reduce...2015-05-19 15:12:09 · 367 阅读 · 0 评论 -
hadoop常见问题解答(转)
[img]http://dl2.iteye.com/upload/attachment/0108/4936/ad1f9f79-4fc9-3b37-8670-112579e50d55.png[/img][b][color=green][size=large](1)Hadoop适不适用于电子政务?为什么?电子政务是利用互联网技术实现政府组织结构和工作流程的重组优化,建成一个精简、高效、...2015-05-11 20:16:39 · 244 阅读 · 0 评论 -
如何使用Hadoop的MultipleOutputs进行多文件输出
[b][color=olive][size=large]有时候,我们使用Hadoop处理数据时,在Reduce阶段,我们可能想对每一个输出的key进行单独输出一个目录或文件,这样方便数据分析,比如根据某个时间段对日志文件进行时间段归类等等。这时候我们就可以使用MultipleOutputs类,来搞定这件事,下面,先来看下散仙的测试数据:[/size][/color][/b][cod...2014-04-10 19:07:49 · 307 阅读 · 0 评论 -
如何在Hadoop里面实现二次排序
[b][color=green][size=large]在hadoop里面处理的数据,默认按输入内容的key进行排序的,大部分情况下,都可以满足的我们的业务需求,但有时候,可能出现类似以下的需求,输入内容:[/size][/color][/b][code="java"]秦东亮;72秦东亮;34秦东亮;100三劫;899三劫;32三劫;1a;45b;567b;...2014-04-15 14:35:20 · 227 阅读 · 0 评论 -
万法归宗之Hadoop编程无界限
[b][color=green][size=large]记录下,散仙今天的工作以及遇到的问题和解决方案,俗话说,好记性不如烂笔头,写出来文章,供大家参考,学习和点评,进步,才是王道 ,废话不多说,下面切入主题:先介绍下需求:散仙要处理多个类似表的txt数据,当然只有值,列名什么的全部在xml里配置了,然后加工这些每个表的每一行数据,生成特定的格式基于ASCII码1和ASCII码2作...2015-04-08 22:02:41 · 195 阅读 · 0 评论 -
Hadoop问题笔记之五问五答-日志配置
[b][color=green][size=large]接着上次,散仙所写的[url=http://qindongliang.iteye.com/blog/2200400]文章[/url],在Win7上的eclipse中使用Apache Hadoop2.2.0对接CDH5.3的Hadoop2.5调试时,很顺利,所有的问题全部KO,今天散仙把项目整理了一下,上传到svn上,这次运行的地方是正宗的Ap...2015-04-10 22:07:11 · 129 阅读 · 0 评论 -
Hadoop进阶之输入路径如何正则通配?
[b][color=green][size=large]在hadoop的编程中,如果你是手写MapReduce来处理一些数据,那么就避免不了输入输出参数路径的设定,hadoop里文件基类FileInputFormat提供了如下几种api来制定:[/size][/color][/b][img]http://dl2.iteye.com/upload/attachment/0107/7805...2015-04-21 19:58:49 · 235 阅读 · 0 评论 -
如何向hadoop集群定时提交一个jar作业?
除了使用Hive,Pig来执行一个MapReduce任务,不需要专门的把项目打成jar包,提交执行,或者定时执行,因为Hive,Pig这些开源框架已经,帮我们自动打包上传了。而有些时候,我们自己手写了一个MapReduce的任务,然后这个任务里面依赖了其他的第三方包,比如说是Lucene的,或者是Solr,ElasticSearch的,那么打包的时候就需要将这些依赖的jar包也一起的打...2015-04-22 15:41:06 · 550 阅读 · 0 评论 -
如何使用Hadoop的Reduce Side Join
[b][color=green][size=large]我们都知道在数据库里,多个表之间是可以根据某个链接键进行join的,这也是数据库的范式规范,通过主外键的关联,由此来减少数据冗余,提高性能。当然近几年,随着NOSQL的兴起,出现了基于列的的列式数据库,典型的有Hbase,MongonDB,Cassdran,等等,NOSQL数据库弱化了关联,直接将一整条数据,存入一列,以及去掉了数据库的部分事...2014-04-22 20:31:44 · 192 阅读 · 0 评论 -
如何基于新API使用Hadoop的Reduce Side Join
[b][color=green][size=large]上篇,散仙介绍了基于Hadoop的旧版API结合DataJoin工具类和MapReduce实现的侧连接,那么本次,散仙就来看下,如何在新版API(散仙的Hadoop是1.2版本,在2.x的hadoop版本里实现代码一样)中实现一个Reduce Side Join,在这之前,我们还是先来温故下Reduce侧连接的实现原理: 在Reudc...2014-04-22 20:58:53 · 125 阅读 · 0 评论 -
亚马逊Hadoop2.2内存参数模板
[b][color=olive][size=large]m1.medium配置选项 默认值mapreduce.map.java.opts -Xmx512mmapreduce.reduce.java.opts -Xmx768mmapreduce.map.memory.mb 768mapreduce.reduce.memory.mb 1024yarn.app.mapre...2015-05-01 18:28:41 · 126 阅读 · 0 评论 -
设置Hadoop+Hbase集群pid文件存储位置
[size=large] 有时候,我们对运行几天或者几个月的hadoop或者hbase集群做停止操作,会发现,停止命令不管用了,为什么呢?因为基于java开发的程序,想要停止程序,必须通过进程pid来确定,而hadoop和hbase默认的情况下,会把pid文件存储在Linux上的/tmp目录的某个目录下,进程名命令规则一般是 框架名-用户名-角色名.pid,而默认情况下,linux的tmp里...2015-10-20 13:40:55 · 195 阅读 · 0 评论 -
Hadoop的Reduce Join+BloomFilter实现表链接
[b][color=green][size=large]散仙,在上篇文章中了,测了使用半链接的方式,来实现的表join,注意中间存储小表的key,是用HashSet实现的,也就是把数据存在内存里,在map侧,进行key过滤后,然后再Reduce侧,实现join,但如果数据量非常大的情况下,HashSet来存放海量的key可能就会出现OOM的情况,这时候,我们就可以采用另一种join方式,也就是今天...2014-04-29 20:17:28 · 442 阅读 · 0 评论 -
Hadoop2.7.1配置NameNode+ResourceManager高可用原理分析
[size=medium]关于NameNode高可靠需要配置的文件有core-site.xml和hdfs-site.xml关于ResourceManager高可靠需要配置的文件有yarn-site.xml逻辑结构:[img]http://dl2.iteye.com/upload/attachment/0113/0183/068b6538-174b-394a-818f-d...2015-11-11 19:51:06 · 231 阅读 · 0 评论 -
Logstash与Kafka集成
[size=medium]在ELKK的架构中,各个框架的角色分工如下:ElasticSearch1.7.2:数据存储+全文检索+聚合计算+服务端Logstasch2.2.2:日志收集与分发推送Kafka0.9.0.0:分布式高可靠消息队列+数据中转存储(失效期默认7天,可配置时间或大小来控制删除策略)Kibana4.1.2:全文检索+查询+图形化页面展示+客户端拓扑架构...2016-02-24 18:44:21 · 1237 阅读 · 0 评论 -
如何监控你的Hadoop+Hbase集群?
[size=medium]前言监控hadoop的框架有不少,如CDH的CM组件和Ambari都可以监控他们自己的hadoop,但是它不能监控apache的hadoop,如果你是使用原生的Apache Hadoop,那么也没关系,原生的Hadoop天生就提供了非常详细的对接Ganglia的jmx接口,里面包含了各个核心组件metrics获取功能,这一点你可以查看hadoop和hbase包...2016-03-21 16:10:03 · 393 阅读 · 0 评论 -
Hadoop+Hbase集群数据迁移问题
[size=medium]数据迁移或备份是任何一个公司都有可能到遇到的一件事,有关hbase数据迁移,官网也给出了几种方案,这里比较推荐使用hadoop distcp这种方式迁移。比较适合大数据量或者跨版本集群之间的数据迁移服务。版本Hadoop2.7.1Hbase0.98.12今天在迁移同版本的hbase数据时,在使用Hadoop distcp时发现下图的一个问题:...2016-03-23 21:00:12 · 257 阅读 · 0 评论 -
Hadoop的8088页面失效问题
[size=medium]前两天重启了测试的hadoop集群,今天访问集群的8088任务监控页面,发现不能用了,总是报500错误,空指针异常,但是以前却是好好的[/size][code="java"]2016-03-31 10:59:55,418 ERROR org.mortbay.log: /clusterjava.lang.NullPointerException ...2016-03-31 11:21:34 · 1946 阅读 · 0 评论 -
Apache Kylin的入门安装
[img]http://dl2.iteye.com/upload/attachment/0125/7145/cae3dae9-93de-329b-9f66-59037667f9d4.jpg[/img]Apache Kylin™是一个开源的分布式分析引擎,提供Hadoop之上的SQL查询接口及多维分析(OLAP)能力以支持超大规模数据,最初由eBay Inc. 开发并贡献至开源社区。它能...2017-06-27 21:27:43 · 198 阅读 · 0 评论 -
如何在kylin中构建一个cube
[img]http://dl2.iteye.com/upload/attachment/0126/0223/215c1d98-1e2b-3b06-92c6-ae9bbec51591.png[/img]前面的文章介绍了Apache Kylin的安装及数据仓库里面的星型和雪花模型的概念,这篇文章我们来看下,如何构建一个kylin的cube进行查询。这里不得不吐槽一下Kylin的资料...2017-07-11 19:06:48 · 221 阅读 · 0 评论 -
如何收集项目日志统一发送到kafka中?
[img]http://img.blog.youkuaiyun.com/20170207190128849[/img]上一篇([url]http://qindongliang.iteye.com/blog/2354381[/url] )写了收集sparkstreaming的日志进入kafka便于后续收集到es中快速统计分析,今天就再写一篇如何在普通应用程序实时收集日志,上一篇写的毕竟是分布式环境下的操作,...2017-02-07 19:07:50 · 282 阅读 · 0 评论 -
计算机图形处理的一些知识
最近在搞opencv来做一些简单的图像识别,既然涉及到图像识别,那么首先我们要把图像重新认识一下,大部分人看到一张照片可能就是单纯的一张照片,在一些做图像处理的人的眼中,可不就这么简单了。### 计算机图形的分类(1)位图(Bitmap)也叫做点阵图,删格图象,像素图,简单的说,就是最小单位由象素构成的图,缩放会失真。构成位图的最小单位是象素,位图就是由象素阵列...2018-04-25 17:46:40 · 528 阅读 · 0 评论 -
Kakfa集群搭建
[size=medium]先来整体熟悉下Kafka的一些概念和架构(一)什么是Kafka?Kafka是由LinkedIn开发并开源的一个分布式消息系统,因其分布式和高吞吐率被广泛应用,现在已经在Hadoop和Spark等大数据的生态系统中成为一个必不可少的生态组件,可与各种计算模型,如离线计算,实时计算,流计算对接数据。(二)为什么要用Kafka?1,以时间复杂...2016-02-23 15:36:54 · 173 阅读 · 0 评论 -
大数据日志收集框架之Flume入门
[size=medium]Flume是Cloudrea公司开源的一款优秀的日志收集框架,主要经历了两个大的版本,分别是Flume-OGFlume-NGOG是0.9.x的版本,依赖zookeeper,角色职责不够单一,NG是新版本指1.x的版本,官网解释它更轻量级,更小,角色职责更单一,利用点到点进行容错,当然这也是以后的趋势,要理解Flume,就首先理解它的架构,下面看下,...2016-02-02 14:25:26 · 284 阅读 · 0 评论 -
Hadoop2.2安装出现不支持bzip2压缩问题原因分析
刚装的hadoop2.2的集群,散仙在执行bin/hadoop checknative 命令时,出现如下警告:[img]http://dl2.iteye.com/upload/attachment/0104/4231/309ef9f8-6888-3ee1-8c85-a7bf44ec99b7.jpg[/img]bizip2的的本地压缩支持无效,整个编译过程,并没有出现任何错误,或...2014-12-16 18:06:47 · 749 阅读 · 0 评论 -
Hadoop2.7.1和Hbase0.98添加LZO压缩
[size=medium]1,执行命令安装一些依赖组件yum install -y hadoop-lzo lzo lzo-devel hadoop-lzo-native lzop2, 下载lzo的源码包并解压wget [url]http://www.oberhumer.com/opensource/lzo/download/lzo-2.09.tar.gz[/url]tar...2016-01-04 17:46:33 · 248 阅读 · 0 评论