BHH Blog

长风破浪会有时,直挂云帆济沧海。

Hadoop 坑爹的Speculative 机制

最近一直在搞Hadoop Hbase。 我们有一个需求是从HDFS上读取输入文件,解析后输出到Hbase。 由于输入文件非常大,TB级别,为了提高写库性能,我们尝试通过map程序在所有data node上并发读取并输出到Hbase。 程序很快完成,并顺利完成入库任务。 我们写了一个统计程序用于检查导入的记录是否与输入文件中的记录数一致。 开始为了测试,输入文件并不是很大,1GB左右...

python多进程不同实现方法的异同点

最近一直在用python编写大数据分析程序,其中用到了多进程的技术,python实现多进程有多种方法,不同方法的运行效果不尽相同,通过这两天的测试整理,虽然不一定很全面,但有些内容python官方文档也没有涉及,因此赶紧写下来方便以后使用,同时也供大家参考,不正确的地方也请指出。         Python实现多进程主要有以下三种方法:         1. 使用multiprocess...

hadoop-2.5.0-cdh5.2.1+spark-1.2.0-bin-hadoop2.4配置调优心得

环境: hadoop-2.5.0-cdh5.2.1 spark-1.2.0-bin-hadoop2.4 master,slave2  30G ram,32 vCore slave4  60G ram,24 vCore slave5  60G ram,24 vCore   测试用例:根据关联条件对2个文件进行关联操作,并将关联后的结果保存到HDFS上。主文件大...

如何基于NTLM代理服务器使Maven能够联网工作

最近在研究Hadoop 和Spark,需要自己编译一个spark包,用到maven工具。版本是:3.2.3,问题是公司的服务器在内网,而公司的HTTP代理是基于NTLM的,maven默认是不支持的,比如:你在settings.xml中有以下配置:     <proxy>       <id>my-proxy</id>       <active>...

HBase 学习一 客户端写缓冲区 autoFlush

HBase的表操作,默认情况下客户端写缓冲区是关闭的,即table.isAutoFlush() = true, 这种情况下,对表的单行操作会实时发送到服务端完成。 因此,对于海量数据插入,修改,RPC通信频繁,效率比较低。这种场景下,可以通过激活客户端缓冲区,批量提交操作请求,提高操作效率。 下面是一个简单的关于autoFlush的测试代码: public static void aut...

关于Eclipse 中用Ant编译Java程序的JDK环境设置问题

日前在开发项目过程中碰到一个Java编译环境配置问题,折腾了不少时间,特写下来以备后用: 问题是这样的,有一个java程序,通过Eclipse 的export jar功能能够正常编译并打包,但用Ant编译却报下面的错误: "java.lang.UnsupportedClassVersionError: com/sun/tools/javac/Main : Unsupported major...

CentOS7 yum 命令使用心得-代理上网,从光盘安装软件

如题,本文只是作者这两天在使用yum时的一些使用心得,如果要了解完整的yum命令,请通过man yum查看。 心得1:无法直连公网的情况下如何使用yum 本人是在公司电脑上安装CentOS虚拟机,公司电脑需要通过代理才能访问公网。这种情况下,需要修改yum.conf文件,添加代理设置才能使yum访问公网 # cd /etc # vi yum.conf  在yum.conf文件末尾添加...