随笔分类 -  hadoop

摘要:最近在做mahout源码调用的时候,发现一个参数:startPhase和endPhase,这两个参数是什么意思呢?比如运行RecommenderJob时,可以看到10个MR任务,所以猜测是否是一个phase代表一个MR?带着这样的疑问进行了实验:$Hadoop_HOME/bin/hadoop jar mahout-0.7/core/target/mahout-core-0.7-job.jar org.apache.mahout.cf.taste.hadoop.item.RecommenderJob --input input/intro.csv --output date1129/cf00 - 阅读全文
posted @ 2013-10-08 11:29 谷雨· 阅读(1184) 评论(0) 推荐(0)
摘要:最近在用cloudera Manager来 在几个虚拟机上进行hadoop 的安装,总结一下遇到的问题。1 似乎没有 start-balancer.sh 命令 似乎安装包中没有这个命令 怎么做集群的负载均衡还是一个问题。 阅读全文
posted @ 2013-09-27 18:18 谷雨· 阅读(4467) 评论(0) 推荐(0)
摘要:1 hadoop fs 这个是FS shell 提供的 。上传下载文件 查看文件大小 改变文件权限都用这个命令。 具体命令的 用法可以到这个文档来查询 http://hadoop.apache.org/docs/r0.19.1/cn/hdfs_shell.html2 hadoop dfsadmin (在CH4版本中这个命令改为 hdfs dfsadmin ) 注意设置文件夹大小的命令。 查询文件夹是否设置了大小限制的命令为 hadoop fs -count -q /user/xxx3 fsck命令 不过现在还没有感觉这个命令有什么特殊的地方。4start-balancer.sh... 阅读全文
posted @ 2013-09-27 18:06 谷雨· 阅读(485) 评论(0) 推荐(0)
摘要:转自 http://www.cppblog.com/koson/archive/2010/07/19/120773.html hive简介 hive是一个基于hadoop的开源数据仓库工具,用于存储和处理海量结构化数据。它把海量数据存储于hadoop文件系统,而不是数据库,但提供了一套类数据库的数据存储和处理机制,并采用HQL(类SQL)语言对这些数据进行自动化管理和处理。我们可以把hive中海量结构化数据看成一个个的表,而实际上这些数据是分布式存储在HDFS中的。Hive经过对语句进行解析和转换,最终生成一系列基于hadoop的map/reduce任务,通过执行这些任务完成数据处理。H... 阅读全文
posted @ 2013-09-26 16:10 谷雨· 阅读(1898) 评论(0) 推荐(0)
摘要:背景:前几天拿来apache日志,用hive的正则进行匹配,发现匹配出来的字段算是NULL,但是我用RegexBuddy工具显示能够匹配的到啊!例子如下(我拿正常的apache日志来比较,我的apache日志格式被更改过)1、apache日志格式:127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET /apache_pb.gif HTTP/1.0" 200 23262、正则表达式:([^ ]*) ([^ ]*) ([^ ]*) (-|\[[^\]]*\]) ([^ \"]*|\"[^\"]*\& 阅读全文
posted @ 2013-09-26 16:04 谷雨· 阅读(27958) 评论(0) 推荐(0)
摘要:上篇文章说过,hadoop实际上就是就是一个liunx虚拟机,它的文件操作命令同linux,而它的用户呢?它的用户实际上就是linux主机的用户。这里我们做的例子就是:新建一个liunx用户,并为该linux用户授权hadoop相关权限。1、以root身份登陆,新建一个linux用户,用户名为hauser,并授予相关权限 useradd hauser —–新建linux用户 hauser passwd hadoop —为新建的用户hauser设置初始密码 chown -R hadoop:hauser /opt/hadoop —将hadoop的相关操作权限授予hauser hadoop ... 阅读全文
posted @ 2013-09-25 14:28 谷雨· 阅读(1661) 评论(0) 推荐(0)
摘要:从这张图上看,动态代理也可以用在真正类外面包裹一层普通处理类来实现, 这样做的坏处是 不能扩展,每一个真正类都需要自己的一个代理类,而动态代理可以用一个Proxy类对所有的有接口实现的真正类进行代理。 public class DPMain { public static PDQueryStatus create(DPQueryStatusImpl dpqs) ... 阅读全文
posted @ 2013-08-22 11:01 谷雨· 阅读(367) 评论(0) 推荐(0)
摘要:拿一个例子说我的理解 public class NIOServer { private static final int TIMEOUT = 300; private static final int PORT = 12112; public static void main(String[] args) { try... 阅读全文
posted @ 2013-08-22 11:00 谷雨· 阅读(2087) 评论(0) 推荐(0)
摘要:在hadoop 整体分析中,说过nameNode主要是实现一个 blockID 到对应 dataNode的对应关系映射。 现在分析一下腰实现这个映射,nameNode还需要哪些模块。 1 为了方便用户查找,实现一个目录树是必须的 (因为要完成 目录到文件的映射,称之为一级关系)。 在linux中是用C 和汇编语言来实现这个的,想要看懂代码感觉不容易,现在有一个JAVA版本的实现,让人兴奋。 ... 阅读全文
posted @ 2013-08-22 10:51 谷雨· 阅读(2281) 评论(0) 推荐(0)
摘要:public class UploadAndDown { public static void main(String[] args) { UploadAndDown uploadAndDown = new UploadAndDown(); try { //将本地文件local.txt上传为HDFS上cloud.txt文件 ... 阅读全文
posted @ 2013-08-21 19:53 谷雨· 阅读(1872) 评论(0) 推荐(1)
摘要:如图所示, 在hadoop中客户端需要和服务端通信 。 首先我们看一下需求是啥。 举一个例子,在客户端想要往hadoop集群中写数据的时候,它需要先和namenode通信,以便获得 诸一个blockID。 这时 ,我们希望在客户端可以做到 诸如 调用一个方法 如 getBlockID() 则就获得了服务端的发过来的ID ,如果调用本地方法一样。 需求搞定,我们看现实有... 阅读全文
posted @ 2013-08-21 11:14 谷雨· 阅读(2924) 评论(0) 推荐(1)
摘要:在前面说hadoop整体实现的时候, 说过DataNode的需要完成的首要任务是K-V存储。 第二个功能是 完成和namenode 通信 ,这个通过IPC 心跳连接实现。此外还有和客户端 其它datanode之前的信息交换。 第 三个功能是 完成和客户端还有其它节点的大规模通信,这个需要直接通过s... 阅读全文
posted @ 2013-08-19 16:44 谷雨· 阅读(3634) 评论(0) 推荐(1)
摘要:configration这个类是分析hadoop源代码一个很好地入口。 先从需求说起。对于一个大型的文件系统,基于配置文件可以增强灵活性。congfigration类就是为了管理配置文件的。 配置文件的一个一对对的KV对。 所以configration类的核心是用了hashmape存储了KV对。 先放上类图 所以configration类核心在于加载资源和解析资源。 举一个例子来... 阅读全文
posted @ 2013-07-28 11:14 谷雨· 阅读(557) 评论(0) 推荐(0)