有人可以举例说明地图中的中位数/分位数的计算吗?
我对Datafu中位数的理解是'n'映射器对数据进行排序并将数据发送到"1"reducer,它负责对n个映射器中的所有数据进行排序并找到中位数(中间值)我的理解是否正确?
如果是这样,这种方法是否适用于大量数据,因为我可以清楚地看到单个减速器正在努力完成最终任务.谢谢
我已经编写了一个文件处理程序,现在它需要从压缩文件中读取(.gz解压缩文件可能会大到2TB),
是否有像(zcat/cat)这样的压缩文件的sed等价物,或者有效地执行以下操作的最佳方法是什么?
ONE=`zcat filename.gz| sed -n $counts`
Run Code Online (Sandbox Code Playgroud)
$ counts:计数器读取(逐行)
上面的方法有效,但对于大文件来说速度很慢,因为我需要读取每一行并在某些字段上执行匹配.
谢谢
虽然没有直接帮助,但这里有一组zcommands
http://www.cyberciti.biz/tips/decompress-and-expand-text-files.html
我一直在PHP网站上使用HighCharts,从旧图表中迁移它,我对这个库的图形选项和函数的数量印象深刻.
但是,我无法提供指向x轴(或y轴)值的超链接,以便导航到另一个URI.
在这种情况下的类别代码
xAxis: {
categories: [
'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'
]
},
Run Code Online (Sandbox Code Playgroud)
任何人都可以指出我在Highcharts上的示例或文档(如果可用).
谢谢
以下是链接类别名称的jsfiddle:http://jsfiddle.net/a5Bdt/
我有一个猪工作,我需要通过在其中找到一个单词来过滤数据,
这是片段
A = LOAD '/home/user/filename' USING PigStorage(',');
B = FOREACH A GENERATE $27,$38;
C = FILTER B BY ( $1 == '*Word*');
STORE C INTO '/home/user/out1' USING PigStorage();
Run Code Online (Sandbox Code Playgroud)
找到C时错误是在第3行,我也尝试过使用
C = FILTER B BY $1 MATCHES '*WORD*'
Run Code Online (Sandbox Code Playgroud)
也
C = FILTER B BY $1 MATCHES '\\w+WORD\\w+'
Run Code Online (Sandbox Code Playgroud) 我正在玩Mahout,发现FileDataModel接受格式的数据
userId,itemId,pref(long,long,Double).
Run Code Online (Sandbox Code Playgroud)
我有一些格式的数据
String,long,double
Run Code Online (Sandbox Code Playgroud)
在Mahout上使用此数据集的最佳/最简单方法是什么?
我正在使用Mahout群集,我有大型群集,每个群集拥有大约10万用户,每个用户有5个功能.在下一步中,我需要计算pearson相关性以找出群集用户之间的相似性.
目前我有一个python脚本,它对我做同样的事情,但正如预期的那样,它需要长时间的计算,不再是一个可行的选择
我查看了Mahout,因为它提供了使用Pearson,Tanimoto,loglikelyhood度量来查找UserSimilarity的功能,我无法找到的是开发这些相似性度量的Mapreduce版本的方法.
是否有任何资源可以举例并解释如何开发UserSimilarity的mapreduce版本,或者使用hadoop流和相同的java类是否有意义.
编辑
即使我在群集中拥有100k用户,我也很少需要计算100k*100k矩阵.大多数时候它将是一个10k*100k的矩阵.然而,我有大约500个这样的集群,所以计算500个10k*100k集群的时间相当长,这就是我寻找更好的方法和触发讨论的原因
我试图VARI在同一行中打印后跟逗号的值,这样我就可以拥有这些值的csv文件,但我无法保存值
VARI = 'cat filename | head -1 | cut -d, -f${i}'
i=0
while (( i<130)) ;
do
if [[ $i -eq 1 || $i -eq 9 || $i -eq 12 || $i -eq 23 || $i -eq 25 || $i -eq 29 ]]
then
VARI = 'cat filename | head -1 | cut -d, -f${i}'
echo "$VARI ,"
fi
let i=$i+1;
done
Run Code Online (Sandbox Code Playgroud)
输出预期是
4,abc,5,8,xyz,9
Run Code Online (Sandbox Code Playgroud)
请让我知道我做错了什么,谢谢!
我有一个文件,其格式为'21pro_ABCD_EDG_10800_48052_2 0.0'
如何用a,(逗号)替换_ [0-9],以便我可以得到输出
21pro_ABCD_EDG,10800,48052,2,0.0
我正在研究map reduce program并且正在考虑设计表单的计算,其中a1, b1的值是与键相关联的值
a1/b1, a1+a2/b1+b2, a1+a2+a3/b1+b2+b3 ...
Run Code Online (Sandbox Code Playgroud)
因此,在减速器的每个阶段,我都需要先前的值.如何将此设计为地图减少,因为在每个阶段只能读取与特定键相关联的值.
如果您觉得问题不明确,您可以引导我解决这个一般性问题吗?
更一般的问题:如何在map reduce中使用递归开发Fibonacci系列?
你能帮我修改我的设计吗?
key1, V1,V2,V3
Key2, V4,V5,V6
Run Code Online (Sandbox Code Playgroud)
映射器输出
Key1_X V1
Key1_Y V2
Key2_X V4
Key2_Y V5
Run Code Online (Sandbox Code Playgroud)
减速机输出
Key1_X {V1,.....}
Key1_Y {V2,.....}
Run Code Online (Sandbox Code Playgroud)
同样,现在在下一个映射器阶段.我可以创建这样的列表:
key1 {V1,....} {V2,....}
Key2 {V4,....} {V5,....}
Run Code Online (Sandbox Code Playgroud)
我这样做的理由是执行:
Key1 {V1/V2, V1+V6/V2+V7, V1+V6+..../V2+V7+.. , .........}
Run Code Online (Sandbox Code Playgroud)
是否有可能做到这一点?因为数据集非常大,所以我认为使用map reduce会更好.
更改设计有助于提高效率吗?
hadoop ×5
linux ×3
mapreduce ×3
apache-pig ×2
java ×2
mahout ×2
shell ×2
charts ×1
data-mining ×1
echo ×1
highcharts ×1
html ×1
javascript ×1
jsfiddle ×1
median ×1
perl ×1
regex ×1
sed ×1
statistics ×1