- 浏览: 45161 次
- 性别:
- 来自: 北京
-
最新评论
-
xingzhou888:
你好! 看了你前两个mr的代码,写的很棒,想问下后面两个mr ...
mapreduce简单实现基于物品的协同过滤算法
文章列表
今天在集群和调试之前开发的spark算法时,我提交的算法一直处于accpected状态,而且无法一直没有分配到nodemanager,怀疑是集群上的资源都被占用了 一直无法分配到资源导致的。查看了下historyserver,看见同事的一个算法正在running,他分配了5g的内存来执行。可是每台集群都又24g内存,不能他的任务用了5g我的就跑不了啊。。应该是yarn设置的内存太小,随后就查了相关配置,确实都是用的默认值,下面给出具体的配置信息,在yarn-site.xml 中 :
<property><name>yarn.nodemanager.resource.m ...
现在进到各种电商网站都会在页面给你推荐一些物品,那么这些推荐的物品是怎么得出来的呢?这里介绍一种协同过滤算法:基于物品的协同过滤算法。简单的说,就是给用户推荐他之前买过且平分高的相似的物品。该算法的主要思想是:
1. 建立物品的同现矩阵
就是说按用户分组,找出每2个物品在多少用户中同时出现的次数。
2. 建立用户对物品的评分矩阵
每个用户对每个物品的评分
3. 2个矩阵相乘,计算结果。
下面以一个简单的例子进行实际开发。
一份用户对商品的评价数据:
1 101 4
1 106 3
2 105 3
2 101 1
2 106 2
2 ...
namenode加载fsimge好edits
- 博客分类:
- hadoop
上篇说到了namenode启动过程中主要是加载fsimge,edits和接收datanode的block信息。这篇主要分析namenode加载fsimage和edits的整个过程。
首先,了解一下fsimage和edits是存放什么信息的。
在hdfs-default.xml中通过dfs.name.dir和dfs.name.edits.dir配置fsimage和edits的存放路径,默认的话是存放在一个路径下的。
FSImage类继承了Storage类,来看看Storage类的描述:
* Local storage information is stored in a separa ...
本文转载自: http://abloz.com/2013/01/08/hadoop-1-0-4-fsimage-file-format.html
fsimage文件存放在NameNode中,保存HDFS中文件的meta信息。fsimage和edits 文件格式是一样的。都是二进制存储。具有文件头,目录信息,文件信息。本文分析一下fsimage文件的格式。不同版本的fsimage文件格式会略有差异。
我的hdfs的一个目录和一个文件信息如下:
目录信息
drwxr-xr-x - zhouhh supergroup 0 2012-12-25 18:37 /hb ...
gephi中的统计算法学习
- 博客分类:
- gephi
gephi是一个数据可视化处理软件,其中有很多对数据分析的统计算法,对于很多数据分析算法都有实现,那么就来看看其中的一些统计方法:
1. degree (平均度)
计算每个节点的度,并统计相同度的节点数量
平均度: 有向图: 所有点的度数总和/节点数*2 无向图: 所有点的度数总和/节点数
在图上能够,看出每个度所占的百分比,能够看到每种度用不同颜色标示
通过这个可以看出哪些节点的度高,反应出连接他的点就多,就越关键
2. weightedDegree 平均加权度
加权入度 加权出度 加权度
有向图: 取得每个点的边,如果该边的源为该节点,那么 ...
今天来看下hadoop dfs 的启动过程都做了些什么。
启动hdfs的时候,一般都是使用命令./start-dfs.sh,那就从这个sh文件入手:
"$bin"/hadoop-daemon.sh --config $HADOOP_CONF_DIR start namenode $nameStartOpt
"$bin"/hadoop-daemons.sh --config $HADO ...
今天一同事问重启了hadoop集群后要不要format,我当时想也没想就说,不可以,不然数据都丢失了。后来仔细一想,不对,namenode format貌似不会影响datanode上面的数据,那么namenode format的作用是什么呢,通过代码来看一看吧。
namenode format的类为 org.apache.hadoop.hdfs.server.namenode.NameNode,看看format部分的源码:
private static boolean format(Configuration conf,
boolean isConfirmationNeed ...
在eclipse中用maven构建hadoop项目,能够非常方便的下载hadoop所依赖的jar包,而不需要自己一个个导入。
1. 安装maven (略过)
2. eclipse中配置maven (略过)
3. 创建maven项目
New -》 other -》 Maven -》 Maven project 点击next
勾选 use default workspace location 点击 next
选择 all catalogs -> group id现在org.apache.maven.archetypes artifact id选择maven ...
一起读nutch源码 -- injector
- 博客分类:
- nutch
inject -- inject new urls into the database
inject是在整个nutch运行的最初阶段执行,只执行一次,是将指定目录下的url信息注入到crawldb中。
inject的运行代码在org.apache.nutch.crawl.Injector 类中,implements Tool, 所以执行中先调用run方法。
看看run方法中都做了些什么:
public void inject(Path crawlDb, Path urlDir) throws IOException {
。。。。。。。
//建立一个队url排序的 ...
awk 不换行 printf,但分割符会失效,需要自己手动加,下面是个例子,结合if语句:
awk -F "|" '{OFS="|"}{printf $7"|"$41"|"$1}{if($42==1){printf "|GET|"}else if($42==2){printf "|POST|"}else{printf "|OTHER|"}}{print $26,$1,$1,$1,$19,$10,$8,$9,$43,$15,$13}' $filename ...
- 2013-05-24 10:46
- 浏览 643
- 评论(0)
awk中传入shell变量
- 博客分类:
- awk
假设当前目录下有a.log b.log二个文件,利用awk打印出其文件名,脚本如下:
#! /bin/bashfor file in *.logdo awk 'BEGIN{var=" ' "$file" ' "}END{print var;}' "$file"done
在这里最让人混淆的是单引号和双引号
我们可以利用bash -x test.sh来执行脚本,其会将脚本中的shell变量展开,便于调试
’单引号中除(’)都为原本字符,没有特殊意义
"双引号中除($`")都为原本字符,没有特殊意 ...
shell中awk详解
- 博客分类:
- awk
转载自:http://hi.baidu.com/cjy2020/item/865ca5099479a6d01ff046a6
AWK 实用工具带有其自己的自包含语言,它不仅是 Linux 中也是任何环境中现有的功能最强大的数据处理引擎之一。这种编程及数据操作语言(其名称得自于它的创始人 Alfred Aho、Peter Weinberger 和 Brian Kernighan 姓氏的首个字母)的最大功能取决于一个人所拥有的知识。它允许您创建简短的程序,这些程序读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报表,还有无数其他的功能。 AWK 是什么? 最简单地说,AWK 是一 ...
网上下了一些 hadoop-eclipse-plugin-1.1.2.jar,都不太好用,插件没转上,于是自己ant编译一个jar,步骤如下:
1. 修改${hadoop.root}/src/contrib目录的build-contrib.xml文件,添加eclipse路径和hadoop版本信息:
<property name="eclipse.home" location="D:/work/installfile/eclipse/eclipse" />
<property name="version" ...
- 2013-05-23 10:45
- 浏览 2038
- 评论(0)
在创建自定义的Mapper时候,编译正确,但上传到集群执行时出现错误:13/05/21 17:35:10 INFO mapred.JobClient: Task Id : attempt_201305192231_0005_m_000000_0, Status : FAILEDjava.lang.RuntimeException: java.lang.ClassNotFoundException: com.test.WordCount$WordMap at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:849) ...
- 2013-05-21 18:04
- 浏览 1611
- 评论(0)
apache tika 简介
- 博客分类:
- tika
本文转载自:http://blog.csdn.net/zbf8441372/article/details/8520352
项目介绍
Tika是一个内容分析工具,自带全面的parser工具类,能解析基本所有常见格式的文件,得到文件的metadata,content等内容,返回格式化信息。总的来说可以作为一个通用的解析工具。特别对于搜索引擎的数据抓去和处理步骤有重要意义。
Tika是一个目的明确,使用简单的apache的开源项目。下图是Tika诞生的一个历史过程。
Tika项目之初来源于Nutch项目(大家应该都不陌生),现在是Lucene的子项目,所以也是来源于搜索引擎。其实N ...