草庐IT

can-animate

全部标签

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)”处出现编

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操作书有

Hadoop Map-Reduce : what you can tell about a state: mappers: 80%, reducer :20%

在采访中有人问我一个问题:关于状态,你能说些什么:映射器:80%,缩减器:20%?我的理解是,进入那种状态是不可能的。因为在reducer开始工作之前,所有映射器都应该完成运行:收集所有键值对并按键分组。我说的对吗? 最佳答案 Reducers为20%意味着后台线程已开始将数据从mapper输出位置复制到reducer输入位置。这就是为什么在映射器输出达到100%之前,reducers进度显示为20%。 关于HadoopMap-Reduce:whatyoucantellaboutasta

java - Hadoop : JPS can not find Java installed

我的配置是hduser@worker1:/usr/local/hadoop/conf$jpsTheprogram'jps'canbefoundinthefollowingpackages:*openjdk-6-jdk*openjdk-7-jdkAskyouradministratortoinstalloneofthem虽然我安装了javahduser@worker1:/usr/local/hadoop/conf$java-versionjavaversion"1.6.0_23"OpenJDKRuntimeEnvironment(IcedTea61.11pre)(6b23~pre10-0

hadoop - HBase 旧 WALs : what it is and how can I clean it?

我们的小型hadoop集群空间不足,因此我检查了HDFS上的磁盘使用情况,发现大部分空间都被/hbase/oldWALs文件夹占用。我查看了“HBaseDefinitiveBook”和其他书籍、网站,我还在谷歌上搜索了我的问题,但我没有找到合适的回复...所以我想知道这个文件夹是做什么的,有什么用,以及如何在不破坏一切的情况下从这个文件夹中释放空间...如果它与特定版本有关...我们的集群位于Cloudera(hbase0.98.6)的5.3.0-1.cdh5.3.0.p0.30下。感谢您的帮助! 最佳答案 仅供引用我已经在hbas

hadoop - s3distcp : can not create path from empty string

从S3到HDFS运行s3distcp时:sudo-uhdfshadoopjar/usr/lib/hadoop/lib/s3distcp.jar--srcs3n://workAAAA-KKKK-logs/production-logs/Log-XXXX-click/Log-XXXXX-click-2013-03-27_06-21-19_i-7XXb2x39_00037.gz--desthdfs:///test/我得到以下异常。我的路径语法(s3n://;hdfs:///)有问题吗?以前有人遇到过这个问题吗?13/04/0412:10:52INFOs3distcp.S3DistCp:Usi

Java Hadoop : How can I create mappers that take as input files and give an output which is the number of lines in each file?

我是Hadoop的新手,我已经设法运行了wordCount示例:http://hadoop.apache.org/common/docs/r0.18.2/mapred_tutorial.html假设我们有一个包含3个文件的文件夹。我希望每个文件都有一个映射器,这个映射器将只计算行数并将其返回给缩减器。然后,reducer会将每个映射器的行数作为输入,并将所有3个文件中存在的总行数作为输出。所以如果我们有以下3个文件input1.txtinput2.txtinput3.txt映射器返回:mapper1->[input1.txt,3]mapper2->[input2.txt,4]mappe