草庐IT

hadoop - 如何从S3获取数据并将其用于Elastic map reduce/在哪里写代码?

我有两个大文件并将它们上传到名为“ccssdd”的AmazonS3存储桶中,并创建了一个名为data的文件夹:数据/友谊.xml数据/用户.xml用户结构是12447football..和13..我需要编写一个作业jar以在AmazonElasticMapReduce上运行它以计算:找出每个用户的friend数。我知道我应该从每个友谊元素中生成对作为map函数的输出在reduce函数中,我应该将每个用户ID的“1”相加。1_我知道我可以在eclipse中运行我的应用程序以生成.jar作业文件,但我不知道我应该下载哪些库并将其添加到项目中。2-我真的不知道如何将我的应用程序连接到s3!并

shell - 如何通过 ssh 进入 shell 并运行脚本并将自己留在提示符下

我正在使用亚马逊的弹性map缩减。我正在进入hadoop主节点并执行类似的脚本。$EMR_BIN/elastic-mapreduce--jobflow$JOBFLOW--ssh.它让我进入主节点并运行配置单元脚本。hivescript包含以下几行hiveaddjarjoda-time-1.6.jar;addjarEmrHiveUtils-1.2.jar;和一些创建配置单元表的命令。该脚本运行良好并创建了配置单元表和其他所有内容,但返回到我运行脚本的提示。我如何在配置单元提示符下将它sshed到hadoop主节点。 最佳答案 考虑使用

Python 和 Hadoop - 使用 python 直接获取数据并将其写入 hdfs?

我想每天从yahoo/googlefinance获取与股票的eod价格相关的数据。这些价格应直接存储在HDFS文件中。我稍后可以在它上面制作外部表(使用HIVE)并用于进一步分析。所以,我不是在寻找基本的map-reduce,因为我没有这样的输入文件。python有没有连接器,可以在Hadoop中写入数据? 最佳答案 首先将数据转储到本地文件中。然后想办法把文件上传到HDFS。如果您在“边缘节点”(即一个Linux机器不是集群的一部分,但安装了所有Hadoop客户端和配置),那么你就有了很好的旧HDFS命令行界面hdfsdfs-pu

hadoop wordcount并将文件上传到hdfs

大家好,我是hadoop的新手,我以伪模式安装hadoop。配置文件在这里核心站点.xmlfs.default.namehdfs://localhost:9000hdfs-site.xmldfs.replication1dfs.name.dirfile:///home/hadoop_usr/hadoopinfra/hdfs/namenodedfs.data.dirfile:///home/hadoop_usr/hadoopinfra/hdfs/datanode并且成功启动datanode和namenodeNowiwanttoputmyfileintohdfsbyusingfollowi

hadoop - 比较 2 个配置单元表以查找没有任何唯一列/时间戳的更新/插入/删除记录并将其附加到 Hadoop 中的基表

Base_table(Day01loadfromsource)**IdNameCityCountry**7682StuartFrankfurtGermany8723MickeParisFrance2355NikiNewyorkUSA2097DenyItalyRomenew_table(Day02loadfromsource)**IdNameCityCountry**7682Stuart*Darmstadt*Germany8723MickeParisFrance2355NikiNewyorkUSA*9057BonyPraguePrague*比较以上2个表格时,可以看到以下3个变化。Rec

arrays - Hive - 使用 regxp 创建组并将它们分配到数组中

我有一个正则表达式来解析表中的一些原始数据,例如:',?([\w]*|\d*)'。selectregexp_extract(raw_line,',?([\w]*|\d*){1}',1)asfield1,regexp_extract(raw_line,',?([\w]*|\d*){2}',1)asfield2,...,regexp_extract(raw_line,',?([\w]*|\d*){n}',1)asfieldnfromtable这会创建组来解析CSV字段。问题是要解析的表和每一行都很长,所以这是一个昂贵的操作。我想知道我是否可以使用正则表达式(没有组{n}并将其拆分为一个数组

linux - Hadoop - 列出 HDFS 目录中的所有子目录并将每个目录路径保存到 bash 变量中

假设我有一个名为myDirectory的HDFS目录,其中包含可变数量的子目录,如下所示:/tmp|___mainDirectory|___subDirectory1|___subDirectory2..|___subDirectoryN如何将主目录中每个子目录的路径捕获为bash变量?例如,在上述情况下,我最终会得到N个bash变量,其中每个变量看起来像这样:var_1=/tmp/mainDirectory/subDirectory1var_2=/tmp/mainDirectory/subDirectory2..etc到目前为止,在执行hadoopfs-ls/tmp/mainDire

python - 从 REST API 获取数据并将其存储在 HDFS/HBase 中

我是大数据的新手。我了解到HDFS更多的是存储结构化数据,HBase更多的是存储非结构化数据。我有一个RESTAPI,我需要在其中获取数据并将其加载到数据仓库(HDFS/HBase)中。数据为JSON格式。那么将数据加载到哪个更好呢?HDFS还是HBase?你也可以请你指导我一些教程来做到这一点。我遇到了关于TutorialwithStreamingData的问题.但我不确定这是否适合我的用例。如果你能指导我使用特定的资源/技术来解决这个问题,那将是非常有帮助的。 最佳答案 有几个问题你要思考您想使用批处理文件还是流媒体?这取决于请

hadoop - 从另一个包含空值的表中向表中插入数据,并将空值替换为原始表 1 的值

我想匹配两个表的第一列并将表2的值插入表1。但是,如果表2的值是空的,请保留表1的值。我正在使用Hive来执行此操作。请帮忙。 最佳答案 您需要使用coalesce获取非空值以填充bcolumn和case声明以决定填充ccolumn.示例:hive>selectt1.a,coalesce(t2.y,t1.b)b,casewhent2.yisnullthent1.celset2.zendascfromtable1t1leftjointable2t2ont1.a=t2.x;+----+-----+----+--+|a|b|c|+----

hadoop - 如何从配置单元中的日期中提取月份并将其按月分组

我有如下的Hive表,现在我需要按每个月的平均值对数据进行分组示例配置单元表:datamazonteslainfosysfacebookapple03/01/17753.67808.01216.9914.74116.8604/01/17757.18807.77226.9915.13118.6905/02/17780.45813.02226.7515.02120.6706/05/17795.99825.21229.0114.82123.41示例输出:monthamazonteslainfosysfacebookapple1782.2843.23548.8724.42143.352743.