草庐IT

can_handle

全部标签

hadoop - java.lang.IllegalArgumentException : Can't find HmacSHA1 algorithm 异常

通过brewinstallhadoop安装hadoop后,我想启动hadoop,在mac上运行hadoop2.7.2/start-all.sh时出错,日志:SwingHu19:53:4516/08/1919:50:25INFOnamenode.FSNamesystem:fsOwner=swinghu(auth:SIMPLE)16/08/1919:50:25INFOnamenode.FSNamesystem:supergroup=supergroup16/08/1919:50:25INFOnamenode.FSNamesystem:isPermissionEnabled=true16/0

hadoop - 沙发数据库/沙发基地 : Can you derive a Kimball SCD scheme via a MapReduce view?

假设您在CouchDB中有一个类似日志的文档集合,如JSON文档和属性的表格表示(每行是一个JSON文档,每列是一个属性):PRODUCT_IDSTART_DATEPRICE00000000012016-01-01100.0000000000022016-01-01100.0000000000032016-01-01100.0000000000012016-01-02100.0000000000022016-01-02200.0000000000032016-01-02100.0000000000012016-01-03100.0000000000022016-01-03200.000

hadoop - Spark on Yarn 作业失败,退出代码为 :1 and stderr says "Can' t find main class"

我们尝试将一个简单的SparkPI示例提交到SparkonYarn。bat写法如下:./bin/spark-submit--classorg.apache.spark.examples.SparkPi--masteryarn-cluster--num-executors3--driver-memory4g--executor-memory1g--executor-cores1.\examples\target\spark-examples_2.10-1.4.0.jar10pause我们的HDFS和Yarn运行良好。我们正在使用Hadoop2.7.0和Spark1.4.1。我们只有1个节

hadoop - 无法将 TotalOrderPartitioner 与 Hive : Can't read partitions file 一起使用

我们正在尝试使用生成HBaseHfiles从Hive批量加载。我们的主要问题是,当使用org.apache.hadoop.mapred.lib.TotalOrderPartitioner;它找不到自定义分区程序文件:java.lang.IllegalArgumentException:Can'treadpartitionsfile更多详情:自定义分区程序文件是从Hive表创建的:CREATEEXTERNALTABLEnetezza.ais_lowres_mmsi_range_keys(hbase_key_range_startstring)ROWFORMATSERDE'org.apac

java - Hadoop : set a variable like hashSet only once so that it can be utilized multiple times in each map task

您好,我有一个HashSet,它需要在hadoop中的每个映射任务中使用。我不想多次初始化它。我听说可以通过在配置函数中设置变量来实现。欢迎提出任何建议。 最佳答案 看来你还没有真正了解Hadoop的执行策略。如果你是分布式模式,你不能在多个map任务中共享一个集合(HashSet)。这是因为任务是在它们自己的JVM中执行的,并且它不是确定性的,即使不使用jvm重用,你的集合在jvm被重置后仍然存在。您可以做的是在计算开始时为每个任务设置一个HashSet。因此您可以覆盖setup(Contextctx)方法。这将在调用映射方法之前

java - Apache Hadoop : Can it do "time-varying" input?

即使经过一些谷歌搜索,我也没有找到答案。我的输入文件是由一个进程生成的,当文件达到1GB时,该进程将它们分块。现在,如果我要运行一个处理dfs中的输入目录的mapreduce作业,我如何确保该作业在hadoop作业运行时获取添加到同一输入目录的文件?我觉得这几乎是不可能的,因为当hadoop作业运行时,它会计算剩余时间和所有这些东西,所以当我的输入不断堆积或换句话说是“可变的”时,Hadoop不会知道如何管理它-这是我的猜测。我想知道您对此的看法以及对此的最佳替代方法!感谢您的帮助。 最佳答案 您描述的用例不是Hadoop设计用来处

java - 在 reducer 的 for 循环中获取编译错误 "Can only iterate over an array or an instance of java.lang.Iterable"

在reducer的for循环中出现编译错误“Canonlyiterateoveranarrayoraninstanceofjava.lang.Iterable”。publicvoidreduce(Textkey,Iteratorvalues,OutputCollectorOutput,Reporterarg3)throwsIOException{//TODOAuto-generatedmethodstubintsum=0;for(IntWritableval:values){sum+=val.get();在上面的代码中,在“for(IntWritableval:values)”处出现编

java - hadoop mapreduce : handling a text file with a header

我正在玩和学习hadoopMapReduce。我正在尝试映射来自VCF文件(http://en.wikipedia.org/wiki/Variant_Call_Format)的数据:VCF是一个制表符分隔的文件,以(可能很大的)标题开头。需要此header才能获取正文中记录的语义。我想创建一个使用这些数据的映射器。必须可以从此Mapper访问header才能解码行。来自http://jayunit100.blogspot.fr/2013/07/hadoop-processing-headers-in-mappers.html,我创建了这个InputFormat,带有自定义阅读器:pub

exception-handling - 如何处理在 map/reduce 期间死亡的数据节点

当map/reduce使用的数据节点出现故障时会发生什么?不应该将作业重定向到另一个数据节点吗?我的代码应该如何处理这种异常情况? 最佳答案 如果datanode宕机,运行在该节点上的任务(假设您也将其用作tasktracker)将失败,这些失败的任务将被分配给其他tasktracker以重新执行。在死数据节点中丢失的数据block将在其他数据节点中可用,因为将跨集群复制数据。因此,即使数据节点出现故障,除了重新执行失败任务的非常短暂的延迟外,不会有任何损失。所有这些都将由框架来处理。您的代码无需担心这一点。

hadoop - Cloudera CDH4 : Can't add a host to my cluster because canonical name is not consistent with hostname

我正在使用Ubuntu12.04LTS在4节点集群上安装CDH4。我能够安装cloudera管理器并在主机上启动单节点集群。但是,一旦我添加了一个新主机,CM就会说它运行状况不佳并抛出以下错误:“从Java进程检查时,此主机的主机名和规范名称不一致。”我修改了master和所有主机上的/etc/hosts的内容,以包含IP地址,后跟每台机器的FQDN。我是否还需要设置一个DNS服务器才能完成这项工作? 最佳答案 您不一定需要设置DNS服务器才能使其正常工作,但正向和反向DNS必须明确匹配Hadoop才能正常运行。Hadoop操作书有