草庐IT

hadoop - Mahout 运行分布式推荐给出空文件

我正在阅读MahoutinAction一书并试用分布式推荐引擎示例。但是我在示例中使用了一个小型数据集,而不是维基百科数据集。输入.txt->1,151,131,121,102,112,152,202,172,123,10用户.txt->3其中input.txt和user.txt的格式为user,item,input.txt表示用户过去购买的商品,user.txt表示当前购买的商品当我将这两个文件复制到hdfs中并运行时hadoopjarmahout-core-0.5-job.jar\org.apache.mahout.cf.taste.hadoop.item.RecommenderJ

azure - 使用 ImportTsv 在 Azure 的 HBase 中加载文件时出错

尝试使用推荐的方法在MicrosoftAzure云中的HDInsight中运行的HBase中加载tsv文件,通过远程桌面连接并在命令行上运行尝试将t1.tsv文件(具有两个制表符分隔的列)从hdfs加载到hbaset1table:C:\apps\dist\hbase-0.98.0.2.1.5.0-2057-hadoop2\bin>hbaseorg.apache.hadoop.hbase.mapreduce.ImportTsv-Dimporttsv.columns=HBASE_ROW_KEY,numt1t1.tsv并得到:错误:除了行键和时间戳(可选)之外,还需要一列或多列用法:impo

python - 使用Python获取hdfs中文件的文件名和扩展名

在Python中是否有等效的os模块来读取文件系统(hadoop2.6)?我特别感兴趣的是获取文件的扩展名和基本名称(不包括完整路径)。 最佳答案 不需要“等效”,os.path.basename与hdfs完全相同。即:importos.pathaspathprintpath.basename("/path/to/file.txt")#file.txtos.path—Commonpathnamemanipulations 关于python-使用Python获取hdfs中文件的文件名和扩展

hadoop - 如何通过集群中的oozie工作流将文本文件加载到hdfs

我正在尝试使用oozie在配置单元脚本中加载文本/csv文件并每天安排它。文本文件在本地unix文件系统中。在oozie工作流中执行配置单元脚本之前,我需要将这些文本文件放入hdfs。在实时集群中,我们不知道作业将在哪个节点上运行。它会在集群中的任何一个节点上随机运行。谁能给我解决方案提前致谢。 最佳答案 不确定我明白你想做什么。在我看来,它行不通:Oozie服务器只能访问HDFS文件(与Hive相同)您的数据在某处的本地文件系统上那么为什么不事先将文件加载到HDFS中呢?可以在文件可用时(上游作业中的后处理操作)或在固定时间(使用

一个小文件的hadoop并行任务

我有一个由3个节点和一些40Mbavro文件组成的集群。我想并行化作业以利用多核,因为文件的每一行都是通过相同的长时间运行的算法处理的。我阅读了有关NLineInputFormat的内容,但我想知道是否设置配置some_conf.set("mapred.max.split.size",some_value);有意义吗? 最佳答案 是的,你是对的。如果你想通过使用你的集群处理你的文件大小为40MB(假设64Mbblock大小)超过1个映射器,然后将mapred.max.split.size设置为你使用的值默认情况下为Long.MAX_

java - 获取一个单词在文本文件中出现的次数并将其链接到文本文件

我目前有3个包含数据的文本文件Textfile1HelloWorldByeWorldTextfile2HelloWorldHelloSecond如何得到结果Hello{Textfile1=1,Textfile2=2}World{Textfile1=2,Textfile2=1}目前我已经设法将我的map中的文字传递到我的Reducejava页面中。这就是我目前所处的位置。publicclassReduceextendsReducer{HashMapinput=newHashMap();publicvoidreduce(Textkey,Iterablevalues,Contextconte

hadoop - datanode中的文件是如何命名的| datanode hadoop中文件的命名约定

请告诉我数据节点中文件的命名方式/或依据是什么?我对一个大于64MB的文件进行了copyFromLocal,发现它创建了两组文件。一个元文件和一部分实际文件。datanode中的文件是如何命名的?hadoop架构用什么算法来命名这个文件?blk_-861882337543881015_1251.metablk_-861882337543881015blk_-1127355763020627217_1252.metablk_-1127355763020627217 最佳答案 通常有两种类型的文件被写入数据节点。其中一个将包含文件名为b

hadoop - PIG 脚本根据指定的单词将大文本文件拆分成多个部分

我正在尝试构建一个pig脚本,它接收教科书文件并将其分成章节,然后比较每一章中的单词,并仅返回出现在所有章节中的单词并计算它们。这些章节很容易被CHAPTER-X分隔。这是我目前所拥有的:lines=LOAD'../../Alice.txt'AS(line:chararray);lineswithoutspecchars=FOREACHlinesGENERATEREPLACE(line,'([^a-zA-Z\\s]+)','')asline;words=FOREACHlineswithoutspeccharsGENERATEFLATTEN(TOKENIZE(line))asword;g

scala - 如何使用 Scala 使用 Hadoop 客户端在 HDFS 中 append 文本文件?

我想将文本文件写入HDFS。文件必须写入HDFS的路径是动态生成的。如果文件路径(包括文件名)是新的,则应创建该文件并将文本写入其中。如果文件路径(包括文件)已经存在,则该字符串必须append到现有文件。我使用了以下代码。文件创建工作正常。但不能将文本append到现有文件。defwriteJson(uri:String,Json:JValue,time:Time):Unit={valpath=newPath(generateFilePath(Json,time))valconf=newConfiguration()conf.set("fs.defaultFS",uri)conf.s

hadoop:如何显示put命令的执行时间?或者如何显示在 hdfs 中加载文件的持续时间?

如何在hadoop中配置put命令以显示执行时间?因为这个命令:hadoopfs-puttable.txt/tables/table只是返回这个:16/04/0401:44:47WARNutil.NativeCodeLoader:Unabletoloadnative-hadooplibraryforyourplatform...usingbuiltin-javaclasseswhereapplicable命令有效,但不显示任何执行时间。你知道命令是否可以显示执行时间吗?还是有另一种获取该信息的方法? 最佳答案 根据我的理解,hado