自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

cuilanbo的专栏

邮箱:158646832@qq.com 有问题可以互相讨论

  • 博客(49)
  • 收藏
  • 关注

转载 storm ui显示supervisor个数与实际不符的解决

蛮奇怪的问题,具体现象就是启动了多个supervisor,单在ui上只显示一个(也有可能是多个supervisor中的某几个看上去被“合并”了),当我kill掉其中一个时,另一个就出现了。 重启集群也没有用,想到可能是zookeeper中有冲突,删除了/storm中的所有,一启动,发现还是这样。检查了配置,也没有不对的地方。接着检查日志,发现两个supervisor用的

2015-02-28 12:04:15 3772 2

原创 maven 把本地的jar打入到发布包中

很多人用mvn来管理发布包,但是有些jar包并没有发布到公网上,也就是平时我们说的本地的jar包,这下可愁坏了我们了。该怎么办呢?其实很简单,把这个jar包添加到自己本地的maven库里,举个例子,我们本地有个jar包叫,hadoop-lzo-0.4.2.0-SNAPSHOT.jar , 想把这个jar打入到自己的发布包中。可以先执行如下语句mvn install:install-

2015-02-14 11:08:40 2148

原创 storm-hdfs RotationActions 接口用法

storm-hdfs 这个插件支持  Rotation Actions 这个功能,官方文档解释是这样的,   ### File Rotation Actions  Both the HDFS bolt and Trident State implementation allow you to register any number of `RotationAction`s.  What

2015-02-14 10:51:20 3298

转载 hbase 快照和集群备份的NB方法

HBase Snapshots允许你对一个表进行快照(即可用副本),它不会对Region Servers产生很大的影响,它进行复制和 恢复操作的时候不包括数据拷贝。导出快照到另外的集群也不会对Region Servers产生影响。 下面告诉你如何使用Snapshots功能1.开启快照支持功能,在0.95+之后的版本都是默认开启的,在0.94.6+是默认关闭  property>

2015-01-29 17:05:17 5950

转载 HDFS 上传文件不均衡和Balancer太慢的问题

向HDFS上传文件,如果是从某个datanode开始上传文件,会导致上传的数据优先写满当前datanode的磁盘,这对于运行分布式程序是非常不利的。解决的办法:1、从其他非datanode节点上传可以将hadoop的安装目录复制一份到一个不在集群中的节点(直接从非datanode的namenode上传也可以,但是这样不太好,会增加namenode的负担,并且时间长了会让

2014-12-04 14:46:26 865

转载 Linux shell脚本的字符串截取

假设有变量 var=http://www.hao.com/123.htm 一 # 号截取,删除左边字符,保留右边字符。   echo ${var#*//}其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符即删除 http://结果是 :www.hao.com/123.htm

2014-11-12 13:57:13 500

转载 R语言与机器学习中的回归方法学习笔记

机器学习中的一些方法如决策树,随机森林,SVM,神经网络由于对数据没有分布的假定等普通线性回归模型的一些约束,预测效果也比较不错,交叉验证结果也能被接受。下面以R中lars包包含数据集diabetes为例说明机器学习中的回归方法。一、数据集及交叉验证办法描述          Diabetes数据集包含在R的lars包中,数据分为x,y,x2三个部分,因变量为y,数据是关于糖尿病的

2014-10-27 17:47:49 11179 1

转载 Bagging算法的R语言实现

bagging 是bootstrap aggregating的缩写,是第一批用于多分类集成算法。bagging算法如下: 循环K次,每次都从样本集D中有放回地抽取样本集Di,这样总共得到k个样本集,用这K个样本集进行决策树生成,获得K个决策树模型,再将要检测的数据用这K个决策树模型进行多数表决,获得票数多的结论。这种思想跟现代民主投票制度如出一辙,一个人再厉害,判断力也是有限的

2014-10-27 17:07:51 4527

转载 用户画像数据建模方法

从1991年Tim Berners-Lee发明了万维网(World Wide Web)开始,到20年后2011年,互联网真正走向了一个新的里程碑,进入了“大数据时代”。经历了12、13两年热炒之后,人们逐渐冷静下来,更加聚焦于如何利用大数据挖掘潜在的商业价值,如何在企业中实实在在的应用大数据技术。伴随着大数据应用的讨论、创新,个性化技术成为了一个重要落地点。相比传统的线下会员管理、问卷调查、购物篮

2014-09-25 16:10:32 10520

转载 linux将程序放到后台执行

测试脚本test.sh: i=1while :do    echo $i    sleep 1    ((i++))done一、当在前台运行某个作业时,终端会被该作业占据,从而需要再开一个终端来进行其他的操作,为了避免这种不方便我们可以将作业放到后台执行,主要有两种方式 1、&命令 sh test.sh

2014-09-17 11:10:31 25909

原创 linux 文件去重

两个文件的交集,并集前提条件:每个文件中不得有重复行1. 取出两个文件的并集(重复的行只保留一份)cat file1 file2 | sort | uniq > file32. 取出两个文件的交集(只留下同时存在于两个文件中的文件)cat file1 file2 | sort | uniq -d > file33. 删除交集,留下其他的行cat file1 file2

2014-09-01 11:54:36 2974

原创 awk日常用脚本

1 求 在file1里 但是不在file2里awk 'NR==FNR{u[$0]=1}NR>FNR{if(!($0 in u))print}' file2 file1

2014-08-28 10:45:00 666

转载 Mahout构建图书推荐系统

Hadoop家族系列文章,主要介绍Hadoop家族产品,常用的项目包括Hadoop, Hive, Pig, HBase, Sqoop, Mahout, Zookeeper, Avro, Ambari, Chukwa,新增加的项目包括,YARN, Hcatalog, Oozie, Cassandra, Hama, Whirr, Flume, Bigtop, Crunch, Hue等。从2

2014-07-31 12:08:32 5716

转载 从源代码剖析Mahout推荐引擎

从源代码剖析Mahout推荐引擎Hadoop家族系列文章,主要介绍Hadoop家族产品,常用的项目包括Hadoop, Hive, Pig, HBase, Sqoop, Mahout, Zookeeper, Avro, Ambari, Chukwa,新增加的项目包括,YARN, Hcatalog, Oozie, Cassandra, Hama, Whirr, Flume, Bigtop,

2014-07-31 12:05:09 942

原创 hadoop1.0.4 map数设置

/** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements.  See the NOTICE file * distributed with this work for additional information * regard

2014-07-15 12:22:31 1255

原创 hadoop的MR当用MultipleInputs时要获取文件路径方法

hadoop的MR当用MultipleInputs时,要获取文件路径的话比较麻烦,需要如下代码

2014-05-13 16:44:30 2678

转载 Hadoop_Map中获取当前spilt文件名

有时候需要在Map类中的map函数中获取当前split所读取的文件名。在旧版mapred下面实现方法如下:// 获得输入文件的路径名String path=((FileSplit)reporter.getInputSplit()).getPath().toString();//使用Reporter reporter对象来获取,在新版mapreduce中,Reporter rep

2014-02-26 16:10:23 2952

原创 myeclipse安装插件

myeclipse安装pydev插件1、下载pydev插件,网址是http://jaist.dl.sourceforge.net/project/pydev/pydev/Pydev 1.6.3/org.python.pydev.feature-1.6.3.2010100513.zip2、在C:\Program Files\Genuitec\MyEclipse 8.x L

2013-03-06 11:18:45 868

转载 Google三篇论文----GFS

Google文件系统 GFS是一个可扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用。它运行于廉价的普通硬件上,但可以提供容错功能。它可以给大量的用户提供总体性能较高的服务。1、设计概览 (1)设计想定 GFS与过去的分布式文件系统有很多相同的目标,但GFS的设计受到了当前及预期的应用方面的工作量及技术环境的驱动,这反映了它与早期的文件系统明显不同的设想。这

2013-02-02 11:49:30 3034

转载 Google 三篇论文---MapReduce

MapReduce:超大机群上的简单数据处理摘要MapReduce是一个编程模型,和处理,产生大数据集的相关实现.用户指定一个map函数处理一个key/value对,从而产生中间的key/value对集.然后再指定一个reduce函数合并所有的具有相同中间key的中间value.下面将列举许多可以用这个模型来表示的现实世界的工作.以这种方式写的程序能自动的在大规模的普通机器上实现并

2013-02-02 11:47:32 4114

转载 JAVA内存的一些总结(三) 垃圾回收

原博客地址:http://www.solr.cc/blog/?p=369垃圾回收,一直是JVM帮我们干,看过几篇文章。总结一下,不求能优化回收机制,记录下来就好。做点准备工作:GC工作就是回收死对象,腾出空间。什么是死对象:没有任何引用的对象就是死对象.应该被回收。怎么找死对象:通过根搜索方法找到死对象。    这个算法的基本思路是通过一系列的名为“GC Roots”的对象

2013-01-31 15:03:50 828

转载 JAVA内存的一些总结(二) 对象访问

原博客地址:http://www.solr.cc/blog/?p=242今天说说 java的对象访问.对象访问会涉及到 栈、堆、方法区这三个内存区域。对象访问主要有两种:句柄访问和指针放访问。上图(源于网络):前面我们分析过内存各部分的功能,栈中存放的是变量表,堆中存放对象实例,方法去存放类信息(如类名 父类 接口实现等)。这样从两个图中不难发现访问对象的流程是一致 都

2013-01-31 15:02:37 725

转载 JAVA内存的一些总结(一) 内存的划分

原博客地址 http://www.solr.cc/blog/?p=217最近面试总是有人 信誓旦旦的问:“对java的内存了解多少?”“聊聊java的回收机制?”,”遇没有遇到过内存的问题” 巴拉巴拉的。使用java几年了,但是自我感觉停留在应用阶段小菜鸟一般。多数开发人员应该也和我一样,除了调整一下java的内存大小以外,一般也不会遇到内存泄露的问题。除非代码写的各种资源不释放如 c

2013-01-31 15:01:31 1200

原创 你的flume-ng的第一篇博客

我在flume-ng 1.1.0 孵化版的时候就开始接触了,自己也搞了一段时间,没事扯扯心得吧。   先说在前面,flume-ng 后面的版本,我没仔细读change log ,比较农民 , 不知道新添了哪些特别NB的功能,有说错的地方,还请多多指教。   首先,介绍一个非常全的文章,http://flume.apache.org/FlumeUserGuide.html 看了这篇文章,基本

2013-01-28 11:40:26 18218 6

转载 Hadoop动态添加删除datanode及tasktracker

首先建议datanode和tasktracker分开写独立的exclude文件,因为一个节点即可以同时是datanode和tasktracker,也可以单独是datanode或tasktracker。 1、删除datanode修改namenode上的hdfs-site.xml[plain] view plaincopyprint?    dfs.hosts

2013-01-17 17:43:20 2650 1

原创 hadoop配置自动清理日志

hadoop集群跑了很多的任务后在hadoop.log.dir目录下会产生大量的日志文件。可以通过配置core-site.xml文件让集群自动清除日志文件: hadoop.logfile.size 10000000 The max size of each log file hadoop.logfile.count 10 The max numb

2013-01-08 17:37:50 3317

原创 巧用备份数节省hdfs空间

我们最近遇到一个问题,hdfs硬盘空间不足。各位有没有遇到类似的问题呢?仔细分析了一下,发现hdfs下有这样一类文件,留之无大用,弃之可惜。比如说最原始的日志文件........本来留下他是用来做保险的,但是不一定能用的上,并且占据很大空间。想想这样的文件该怎么处理好呢?于是乎 诞生了一个想法,把这一类的数据备份数改小,由3改为2,这样能剩下1份的空间。用到了这个命令:ha

2013-01-05 17:35:33 1912

原创 ReentrantReadWriteLock的使用

ReentrantReadWriteLock 最近读代码的时候遇到了,摘点儿官方说法........        (1)在代码中添加读锁(lock.readLock().lock() ) 的目的:如果有一线程在读取数据时,此时恰好有另一线程,正以写锁的方式在修改该数据,此时读取数据的线程如果加了读锁,将被阻塞,直到另一线程的写锁被释放才能继续读,而如果读取数据的线程未加读锁,那么它的读将不被

2013-01-05 15:28:30 714

原创 Hbase源码研究(六)------put(4)

今天来看一下HRegion类里面的doMiniBatchPut 方法,又是一个麻烦的类........@SuppressWarnings("unchecked") private long doMiniBatchPut( BatchOperationInProgress> batchOp) throws IOException { WALEdit walEdit =

2013-01-05 11:55:04 1289

原创 Hbase源码研究(五)------put(3)

继续上面的分析,主要看提交这下 OperationStatus[] codes = region.put(putsWithLocks.toArray(new Pair[]{}));仔细看put这个方法/** * Perform a batch of puts. * * @param putsAndLocks * the list of

2013-01-04 16:24:29 924

原创 Hbase源码研究(四)------put(2)

在前面的文章里粗略地分析了hbase的put的源码,但是对提交那块分析的不够深入.........现在把提交那块拿出来再分析一下。   书接上文,前面说了在HconnectionManager 其中有一步是提交请求,调用了如下代码 private Callable createCallable(final HRegionLocation loc, final Mu

2013-01-04 14:57:36 885

原创 myeclipse中查看实现类的快捷键

有了这个快捷键,看代码方便多了........1.在接口类中直接按 ctrl+T 弹出实现类的定义2.鼠标点击弹出的实现类定义即可跟踪到实现类。

2013-01-04 13:22:45 3776

原创 Hbase中百万级request不是痴人说梦

昨天和一个互联网公司leader聊天,我说我们hbase集群(几十台小集群)的写请求达到过百万级别,那个leader死活不信。说他们PB级别的数据每秒都在入库也压不到百万级别请求。    啥都不说,先上图吧,有图有真相。         仔细看一下代码,不难发现writeRequestsCount 这个值不是进行一次RPC才增加一次,而是一条put就增加一次。也就是说一次RPC可能多条

2012-12-29 16:57:34 3261 1

原创 Hbase源码研究(三)-------get最终转化为scan来处理(2)

上一篇分析到了Scan scan = new Scan(get) 之后就没再往下写了, 现在继续补上。    先来分析一下Scan的创建过程,public Scan(Get get) { this.startRow = get.getRow(); this.stopRow = get.getRow(); this.filter = get.getFilter(

2012-12-29 16:38:01 2453

原创 Hbase源码研究(二)-------get最终转化为scan来处理(1)

昨天和一个互联网公司的leader争执关于get和scan的问题......记得以前粗略看过一次代码,清楚的记得在0.92.1版本里get最终是转化成scan来处理的......就怪自己当时手贱,脑子笨。没记清楚具体转化步骤......今天写个博客再来分析一下。有代码有真相!!!!!!   首先看下HTable 这个类里get方法@Override public Result get

2012-12-29 15:44:01 1016

原创 Hbase源码研究(一)------put(1)

近来由于工作需要,阅读了一下hbase的源码(0.92.1版),有时间就看一点儿,慢慢完善。有琢磨的不对的地方,还请大家多多指教。先从入数据开始。Put方法最终会调用HTable的doPut方法private void doPut(final List puts) throws IOException { int n = 0; for (Put put : puts)

2012-12-26 16:42:00 1724

原创 HBase MapReduce 使用

项目中需要用MapReduce来读取或者写Hbase,这样可以节省大量开发时间。Hbase本身的jar包里就有这样的API , 以下是我从官网上找的一些资料,和大家分享一下。原文地址:http://hbase.apache.org/book/mapreduce.example.html总体说明一下:TableMapper 主要是读hbase数据,TableReducer 主要是写hba

2012-12-19 14:20:35 5541

转载 快速全量检索Hbase的核武器---------HfileInputFormat

此博客是转载别人的,方法实现也是别人实现的,在此感谢这位大牛!原博客地址:http://blog.csdn.net/kirayuan/article/details/7794402我对这个实现改了一个小地方,当时是因为本地编译未通过........囧~~~~~import java.io.IOException;import org.apache.hadoop.conf.Con

2012-12-19 10:04:26 1814

转载 Twitter Storm 实时数据处理框架分析总结

Storm是Twitter开源的一个类似于Hadoop的实时数据处理框架(原来是由BackType开发,后BackType被Twitter收购,将Storm作为Twitter的实时数据分析)。实时数据处理的应用场景很广泛,如上篇文章介绍S4时所说的个性化搜索广告的会话特征分析。而Yahoo当初创建S4项目的直接业务需求就是为了在搜索引擎的‘cost-per-click’广告中,能根据当前情景上下文

2012-12-18 13:05:49 934

原创 hadoop中查找输入分片的文件路径

前几天遇到个问题,需要查找hadoop的map函数里输入分片的文件路径。     不多废话贴上代码,供大家参考      FileSplit f = (FileSplit)context.getInputSplit();      Path p =  f.getPath();      context.write(value, new Text(p.getParent().getN

2012-12-18 10:11:45 966

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除