- 博客(28)
- 资源 (5)
- 收藏
- 关注
原创 Filesystem closed
java.io.IOException: Filesystem closed at org.apache.hadoop.hdfs.DFSClient.checkOpen(DFSClient.java:232) at org.apache.hadoop.hdfs.DFSClient.access$600(DFSClient.java:70) at org.apache.hadoop.hdfs.
2014-11-11 20:58:35
3830
翻译 [Practical Cassandra]CH2-数据模型
当为开始为你的keyspace创建数据模型的时候,首要事情就是忘记你知道的关于关系型数据建模的一切。关系型数据模型是被设计为用来高效存储,关系型查找,以及联系起关注点的。而Cassandra是被设计作为高性能和存储海量数据的。 与关系型数据库不同的是,Cassandra环境下的数据模型是建立在应用要求的查询模式上的。这意味着你在数据建模之前必须了解应用的读/写模式。这一点对于索引同样适用,C
2014-07-07 22:11:22
1351
原创 [Exception记录]elephantbird.class.for.MultiInputFormat
java.lang.RuntimeException: elephantbird.class.for.MultiInputFormat is not set at com.twitter.elephantbird.mapreduce.input.MultiInputFormat.setTypeRef(MultiInputFormat.java:132) at com.twitter.eleph
2014-06-16 18:14:46
1547
原创 java.lang.NoSuchMethodError: org.apache.thrift.EncodingUtils.setBit(BIZ)B
2014-04-28 00:49:04,219 FATAL org.apache.hadoop.mapred.Child: Error running child : java.lang.NoSuchMethodError: org.apache.thrift.EncodingUtils.setBit(BIZ)B at com.mediav.mba.observe.io.TaggedCookie
2014-04-28 01:06:12
5022
原创 使用MultipleOutputs遇到的问题小记
1、org.apache.hadoop.ipc.RemoteException: org.apache.hadoop.hdfs.protocol.AlreadyBeingCreatedException: failed to create file /user/bjdata/user/wuyb/semv/SemAAJob_3/calsigma/_temporary/_attempt_2013062
2013-08-12 20:17:35
3113
原创 使用MultipleInputs出现InstantiationException
Exception in thread "main" java.lang.RuntimeException: java.lang.InstantiationExceptionat org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:115)at com.mediav.hadoop.mapreduce
2013-07-04 11:44:33
3516
原创 Mahout in action书中源码导入eclipse
下载源码:http://www.manning.com/owen/MiA_SourceCode.zip解压缩后里面有readme安装好thrift、maven将pom.xml中的:改成,引号里面是thrift安装位置。将pom.xml中thrift的版本从0.6.1改成0.9.0,因为classifier.java是由0.9.0版本生成。mvn eclipse:eclipse此时项目上有红色感叹号
2013-04-21 20:29:12
1999
原创 fedora下安装thrift
下载thrift :http://thrift.apache.org/解压缩:tar -xzvf ***.tar.gz进入目录: cd thrift-0.9.0sudo yum install automake libtool flex bison pkgconfig gcc-c++ boost-devel libevent-devel zlib-devel python-devel ruby
2013-04-21 16:13:56
1442
原创 mapreduce作业调优tips
这几天一直在优化job,下面是我认为有用的一些tips。推测执行在整个集群上关闭,特定需要的作业单独开启,一般可以省下约5%~10%的集群资源。由mapred.map.task.speculative.execution[default true]和mapred.reduce.task.speculative.execution[default true]分别控制map和reduce的推测
2013-01-30 18:50:48
2281
原创 Pangool:行走在mapreduce之上
Tuple mapreduce:这篇文章:Tuple MapReduce: beyond classic MapReduce 介绍了Pangool的主体思想,利用tuple,在经典mapreduce上提供更易用的API。 特性:支持三元组而不是key-value(直观上三元组的确能对group、sort、join等操作有更好的支持)简单的二次排序方式内建的reduce端连接保
2013-01-23 15:42:43
1281
原创 mapreduce编程(一):输入文件的过滤
描述:dir/目录下存储了系统每一天的出现的cookie,各天的cookie分别存放在各自的dir/time目录下,如2012-12-21日的cookie存放在dir/2012-12-21目录下。 dir/2012-12-21下的各个文件存储的是出现的cookie,一个cookie的多次出现会记录多次(也就是有重复),dir/2012-12-21下的文件名为prefix-tag-suffix
2013-01-18 11:55:37
3215
原创 Could not resolve archetype org.apache.maven.archetypes:maven-archetype-quickstart
之前都是命令行创建,今天用eclipse装m2eclipse的时候装完后创建项目的时候报错: Could not resolve archetype org.apache.maven.archetypes:maven-archetype-quickstart:RELEASE from any of the configured repositories.解决方式: 1.从h
2013-01-15 11:57:36
5879
原创 MapReduce程序的测试--MRUnit
实在没什么空,好长时间没有写Blog,心虚,没有去参加校园招聘的人伤不起~ MRUnit是一个开源的MapReduce程序测试框架,使用MRUnit,可以在单元测试的时候不用每次都上集群跑一遍,提高测试效率。 MRUnit官网:http://mrunit.apache.org/ 注意,当你第一次使用的时候,发现出现问题解决不了,看看换个版本能行不[它现在有hadoop1、hado
2012-10-31 00:38:46
2964
原创 [Hadoop源码解读](六)MapReduce篇之MapTask类
MapTask类继承于Task类,它最主要的方法就是run(),用来执行这个Map任务。 run()首先设置一个TaskReporter并启动,然后调用JobConf的getUseNewAPI()判断是否使用New API,使用New API的设置在前面[Hadoop源码解读](三)MapReduce篇之Job类 讲到过,再调用Task继承来的initialize()方法初始化这个task,
2012-09-08 01:16:21
4702
原创 [Hadoop源码解读](五)MapReduce篇之Writable相关类
昨天出去玩了,今天继续。 前面讲了InputFormat,就顺便讲一下Writable的东西吧,本来应当是放在HDFS中的。 当要在进程间传递对象或持久化对象的时候,就需要序列化对象成字节流,反之当要将接收到或从磁盘读取的字节流转换为对象,就要进行反序列化。Writable是Hadoop的序列化格式,Hadoop定义了这样一个Writable接口。public interfac
2012-08-26 12:12:55
13307
原创 [Hadoop源码解读](四)MapReduce篇之Counter相关类
当我们定义一个Counter时,我们首先要定义一枚举类型:public static enum MY_COUNTER{ CORRUPTED_DATA_COUNTER, NORMAL_DATA_COUNTER}; 然后,我们就可以在mapper或reducer里面增加它的值:context.getCounter(MY_COUNTER.CORRUPTED_DATA_
2012-08-24 17:35:48
6151
原创 [Hadoop源码解读](三)MapReduce篇之Job类
下面,我们只涉及MapReduce 1,而不涉及YARN。 当我们在写MapReduce程序的时候,通常,在main函数里,我们会像下面这样做。建立一个Job对象,设置它的JobName,然后配置输入输出路径,设置我们的Mapper类和Reducer类,设置InputFormat和正确
2012-08-24 15:40:17
6855
原创 [Hadoop源码解读](二)MapReduce篇之Mapper类
前面在讲InputFormat的时候,讲到了Mapper类是如何利用RecordReader来读取InputSplit中的K-V对的。 这一篇里,开始对Mapper.class的子类进行解读。 先回忆一下。Mapper有setup(),map(),cleanup()和run()四个方法。其中setup()一般是用来进行一些map()前的准备工作,map()则一般承担主要的处理工
2012-08-24 00:50:39
24140
3
原创 [Hadoop源码解读](一)MapReduce篇之InputFormat
平时我们写MapReduce程序的时候,在设置输入格式的时候,总会调用形如job.setInputFormatClass(KeyValueTextInputFormat.class);来保证输入文件按照我们想要的格式被读取。所有的输入格式都继承于InputFormat,这是一个抽象类,其子类有专门用于读取普通文件的FileInputFormat,用来读取数据库的DBInputFormat等等。
2012-08-23 17:20:51
16323
14
原创 SEVERE: org.apache.solr.common.SolrException: undefined field text
nutch 与 solr3.6.* 集成时出现了这个错误。找了很久,终于发现这里 说Deprecate defaultSearchField,你需要修改SOLR_HOME/example/solr/conf/solrconfig.xml,将里面的text都替换为content(你可以在vim下使用 :%s/old/new/g 全文替换指定字符);接着,将从nutch下拷贝到solr/conf
2012-08-18 15:35:40
6939
原创 [MapReduce编程]用MapReduce大刀砍掉海量数据离线处理问题。
今日在优快云看再次遇见July的这篇博文:教你如何迅速秒杀掉:99%的海量数据处理面试题。这篇文章我之前是拜读过的,今天闲来没事,就想拿来当做MapReduce的练习。MapReduce这把刀太大,刀大了问题就抵不住这刀锋了,事实上一开始我想着,这么多些题目,当是要花不少功夫的,但当我做完一题继续看下面的题目的时候,才发现这些题目在MapReduce模型下显得大同小异了,看来拿大刀的人是
2012-08-16 21:02:04
2741
原创 [Hadoop]使用DistributedCache进行复制联结
使用DistributedCache有一个前提,就是进行联结的数据有一个足够小,可以装入内存中。注意我们可以从代码中看出它是如何被装入内存中的,因此,我们也可以在装入的过程中进行过滤。但是值得指出的是,如果文件很大,那么装入内存中也是很费时的。DistributedCache的原理是将小的那个文件复制到所有节点上。我们使用DistributedCache.addCacheFile()来
2012-08-15 21:35:48
3492
原创 使用hadoop的datajoin包进行关系型join操作
datajoin包在hadoop的contrib目录下,我们也可以在src下面看见其源码,它的源码很小,我建议大体看看以了解其原理。利用datajoin进行join操作,在《Hadoop in action》里面已经讲的十分清楚,在这里只提及值得注意的几个地方。TaggedMapOutput的目的是标识数据,让我们知道哪个记录是从哪里来的。DataJoinMapperBase类中的ge
2012-08-15 21:01:55
2859
2
原创 java.io.IOException: File /home/hadoop/mapred/system/jobtracker.info could only be replicated to 0 n
我又再次在关闭hadoop前format了,然后又出现这个错误。java.io.IOException: File /home/hadoop/mapred/system/jobtracker.info could only be replicated to 0 nodes, instead of 1at org.apache.hadoop.hdfs.server.namenode.
2012-08-15 20:12:03
3407
原创 用eclipse编写mapreduce程序
自己的博客好像要过期了,把一些还有用的东西搬过来避难~首先,下载插件这是另一个插件,你可以看看。然后,放到eclipse/plugin下,我是fedora系统,我放在了/usr/lib/eclipse/plugins下。然后把插件重命名为:hadoop-eclipse-plugin-1.0.0.jar,我的eclipse版本:Eclipse PlatformVe
2012-08-15 19:36:32
2282
原创 关系型MapReduce模式:选择、分组和组内排序
”纸上得来终觉浅,绝知此事要躬行“,MapReduce还是要多练习的。 现有一学生成绩数据,格式如下: // 假设的取值类型和范围:
2012-08-11 10:06:11
3573
原创 Hadoop全分布安装配置及常见问题
一、初始说明系统:Fedora 15机器:7台,NameNode 1+ SecondaryNameNode 1+ DataNode 5单机配置:1G内存,2 core ,32位,35GB可用硬盘,此配置纯属用于简单实验 Hadoop需要运行在oracle的hotspot JDK上,fedora自带的open-jdk似乎不行使用默认的单机架结构,即所有机子在同一个机架 二、软件包准备
2012-07-20 22:47:52
2029
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人