草庐IT

mapReduce

全部标签

php - 生成人口热图 : Mapreduce?

我有一个包含的MySQL表(一亿)个美国位置的纬度/经度坐标居住在该地点方圆一英里范围内的人数问题:在Googlemap或Openstreetmaps上生成并覆盖热图后,无论鼠标光标位于map上的任何一点,都必须确定方圆一英里半径内居住的人数位于。(可以使用使用相邻数据点的简单平均)如何生成这样的热图?是否推荐使用Mapreduce?初步想法热图必须在服务器端预渲染将所有必要的点下载到浏览器然后在客户端生成热图可能是一个问题:必须从数据库中检索大量坐标(数据库负载繁重)并传输到浏览器(大型数据集),此外,浏览器必须处理大量点才能生成热图。这太慢了,所以我想我们必须在服务器端预渲染热图并

hadoop - 从 mapreduce 读取配置单元表

我目前正在编写一个mapreduce程序来查找两个配置单元表之间的差异。我的配置单元表按一列或多列进行分区。所以文件夹名称包含分区列的值。有没有办法读取hive分区表可以在mapper中读取吗? 最佳答案 由于底层HDFS数据将默认组织在分区的配置单元表中table/root/folder/x=1/y=1table/root/folder/x=1/y=2table/root/folder/x=2/y=1table/root/folder/x=2/y=2....,您可以在驱动程序中构建这些输入路径中的每一个,并通过多次调用FileIn

hadoop - K-Means 算法 Hadoop

我正在Hadoop(旧API)上实现K-Means算法,但我陷入了无法弄清楚如何进一步进行的地步。到目前为止我的逻辑是:维护两个文件质心和数据。第1步:读取质心文件并将此数据存储在一些list(ArrayList)中。第2步:然后通过映射器读取数据文件,因为它会逐行扫描,然后将此值与列表中已存储的质心进行比较。第三步:输出相应的centroid&data给reducer。第4步:Reducer将处理新质心并将其与数据一起发出。我的问题我的流程是否正确?先将质心文件存储在某个集合中然后再继续处理是否正确?如果我采用方法(2),那么我的问题是如何将这个质心文件存储在某个集合中,因为映射函数

hadoop - Mapreduce 作业 : combiner without reducer

我注意到如果我将reducer的数量设置为0,组合器将无法工作。是否可以在没有reducer的情况下使用组合器?谢谢。 最佳答案 不,不是。即使使用指定的Reducer,也不能保证使用组合器。因此组合器是严格的优化,可以但不一定在Reducers之前调用。如果没有reducer,这些将永远不会被调用。 关于hadoop-Mapreduce作业:combinerwithoutreducer,我们在StackOverflow上找到一个类似的问题: https://

java - 如何为Hadoop Input Format中的一个输入行生成多个键值对?

这是背景。我的MapReduce作业(示例)有以下输入:ApacheHadoopApacheLuceneStackOverflow....(实际上每一行代表一个用户查询。这里不重要。)我希望我的RecordReader类读取一行,然后将几个键值对传递给映射器。例如,如果RecordReader获取ApacheHadoop,那么我希望它生成以下键值对并将其传递给映射器:ApacheHadoop-1ApacheHadoop-2ApacheHadoop-3(“-”是这里的分隔符。)我发现RecordReader在next()方法中传递键值:next(key,value);每次调用Record

java - Mapreduce Hadoop作业异常输出目录已存在

我正在使用以下运行代码运行mapreduce作业,它一直给我以下异常。我确保在开始工作之前删除了该文件夹,但它不起作用。代码:JobConfjobConf=newJobConf(getConf(),MPTU.class);jobConf.setJobName("MPTU");AvroJob.setMapperClass(jobConf,MPTUMapper.class);AvroJob.setReducerClass(jobConf,MPTUReducer.class);longmilliSeconds=1000*60*60;jobConf.setLong("mapred.task.t

hadoop - 数据节点容量为0kb

我正尝试着手研究Hadoop。我的问题可能很基本,请耐心等待。我正在阅读Hadoop:权威指南并遵循天气数据教程。将数据复制到HDFS时,出现以下错误:13/09/0216:34:35ERRORhdfs.DFSClient:Failedtoclosefile/user/bhushan/gz/home/bhushan/ncdc_data/ftp3.ncdc.noaa.gov/pub/data/noaa/1901.gzorg.apache.hadoop.ipc.RemoteException:java.io.IOException:File/user/bhushan/gz/home/bhu

hadoop - 在同一台机器上的多个内核上运行 Map-Reduce 应用程序

我想在一台机器上运行mapreduce任务,我想使用我机器的所有核心。哪种方法最好?如果我以伪分布式模式安装hadoop,是否可以使用所有内核? 最佳答案 您可以使用属性ma​​pred.tasktracker.map.tasks.maximum和ma​​pred.tasktracker.reduce.tasks.maximum来增加映射器的数量/根据您的硬件规范,Reducers在TaskTracker上同时生成。默认情况下,它设置为2,因此最多2个map和2个reduce将在给定实例上运行。但是,要记住的一件事是,如果您的输入非

hadoop - 使用 MapReduce 解析 Freebase RDF 转储

我从Freebase下载了rdf数据转储,我需要提取的是Freebase中每个实体的英文名称。我是否必须使用Hadoop和MapReduce来执行此操作,如果是的话如何?还是有另一种方法来提取实体名称?如果每个实体标题/名称在.txt文件中各占一行就好了 最佳答案 您可以使用Hadoop,但对于这种简单的处理,您将花费更多的时间来解压缩和拆分输入,而不是并行搜索所节省的时间。一个简单的zgrep将在更短的时间内完成您的任务。大致是这样的:zegrep$'name.*@en\t\\.$'freebase-public/rdf/free

hadoop - 如何将作业提交到 Hadoop 中的特定节点?

我有一个包含1个主节点和5个从节点的Hadoop集群。有没有办法将工作提交给特定的一组奴隶?基本上我想做的是用许多可能性对我的应用程序进行基准测试。因此,在使用5个从属设备进行测试后,我想使用4个从属设备运行我的应用程序,然后再使用3个从属设备,依此类推。目前我所知道的唯一方法是停用一个从站并从hadoop集群中移除。但这似乎是一项乏味的任务。我想知道是否有更简单的方法来避免从集群中删除节点。谢谢。 最佳答案 在hadoop/conf中有一个名为“slaves”的文件,您可以在这里简单地添加或删除节点,然后重新启动dfs和mapre