草庐IT

output-directory

全部标签

java - 输出文件包含 Mapper Output 而不是 Reducer 输出

您好,我正在尝试在独立模式下使用mapreduce技术求几个数字的平均值。我有两个输入文件。它包含值file1:2525252525和file2:1515151515。我的程序运行良好,但输出文件包含映射器的输出而不是缩减器的输出。这是我的代码:importjava.io.IOException;importjava.util.StringTokenizer;importorg.apache.hadoop.conf.Configuration;importorg.apache.hadoop.fs.Path;importorg.apache.hadoop.io.IntWritable;i

regex - hive SERDE 正则表达式 : Output format - want to use only few of the output Strings

输入文件如下eno::ename::dept::sal101::emp1::comp1::2800000201::emp2::comp2::2800000301::emp3::comp3::3400000401::emp4::comp4::3600000501::emp5::comp5::400000>createtableemp(enamestring,edeptstring)>rowformatserde'org.apache.hadoop.hive.contrib.serde2.RegexSerDe'>WITHSERDEPROPERTIES(>"input.regex"="^([

哈多普 : reduce output records=0

我正在用2个映射器类和一个化简器编写MapReduce代码,但我不知道为什么我有一个化简输出记录=0。请告诉我如何解决这个问题packagereducesidejoin;importorg.apache.hadoop.io.IntWritable;importorg.apache.hadoop.io.Text;importorg.apache.hadoop.mapreduce.Reducer;importjava.io.IOException;importjava.util.Iterator;publicclassReduceSideJoinReducerextendsReducer{

scala - 星火 SQL : access file in current worker node directory

我需要使用spark-sql读取一个文件,该文件在当前目录中。我使用此命令解压缩存储在HDFS上的文件列表。valdecompressCommand=Seq(laszippath,"-i",inputFileName,"-o","out.las").!!该文件在当前工作节点目录中输出,我知道这一点是因为通过scala执行"ls-a"!!我可以看到该文件在那里。然后我尝试使用以下命令访问它:valdataFrame=sqlContext.read.las("out.las")我假设sql上下文会尝试在当前目录中查找文件,但事实并非如此。此外,它不会抛出错误,而是会发出一条警告,指出找不到

hadoop - 使用 Cloudera Manager 安装 CDH : No such file or directory

使用CM安装并成功下载和分发所有包裹。但是,所有代理都不会在分发100%完成时解压包裹。检查日志,它说:[21/Nov/201809:53:04+0000]30292MainThreadparcelINFOExecutingcommand['chown','root:yarn',u'/opt/cloudera/parcels/CDH-6.0.1-1.cdh6.0.1.p0.590678/lib/hadoop-yarn/bin/container-executor'][21/Nov/201809:53:04+0000]30292MainThreadparcelINFOchmod:/opt

hadoop - Apache hive : LOAD DATA vs INSERT OVERWRITE OUTPUT FILE SIZE

我正在使用ApacheHive,我不明白为什么如果我使用INSERTOVERWRITE与LOAD加载数据,表的大小会加倍。问题说明如下:我创建了一个表项从item.dat加载数据(大约28MB)在Azure中发生的是文件item.dat将被移动到hive/warehouse并且当然大小保持不变现在,如果我创建另一个与item相同的表item2,然后使用以下命令将数据从item加载到item2:INSERTOVERWRITETABLEitem2SELECT*FROMitem表item2的大小是item的两倍(大约55MB)为什么会这样?有什么办法可以避免吗?附言。这只是为了说明问题。在实

bash - Docker 上的 DataStax Enterprise : fails to start due to/hadoop/conf directory not being writable

我关注了DataStax'sguideonbestpracticesforusingDSEwithDocker,但我在使用DataStax提供的所有默认设置脚本和Dockerfile时遇到了以下错误。错误日志Causedby:java.lang.RuntimeException:FailedtosavecustomDSEHadoopconfigatcom.datastax.bdp.hadoop.mapred.CassandraJobConf.writeDseHadoopConfig(CassandraJobConf.java:310)~[dse-hadoop-5.0.3.jar:5.0

Hadoop : java. io.IOException : No valid local directories in property: mapred. local.dir

当我运行hadoop作业时,它失败并显示以下堆栈跟踪:11/10/0613:12:49INFOmapred.FileInputFormat:Totalinputpathstoprocess:111/10/0613:12:49INFOmapred.JobClient:Cleaningupthestagingareahdfs://localhost:54310/app/hadoop/tmp/mapred/staging/Har/.staging/job_201110051450_000711/10/0613:12:49ERRORstreaming.StreamJob:ErrorLaunch

import - HBase 导出/导入 : Unable to find output directory

我正在为我的应用程序使用HBase,我正在尝试使用org.apache.hadoop.hbase.mapreduce.Export导出数据,因为它是指示here.我面临的问题是,一旦执行了命令,创建导出时就没有错误。但是指定的输出目录并没有出现在它的位置。我使用的命令是$bin/hbaseorg.apache.hadoop.hbase.mapreduce.Exporttable_namedb_dump/ 最佳答案 我得到了解决方案,因此我正在回复我自己的答案hadoop的conf目录下的hadoop-env.sh必须有如下两行exp

hadoop - Java 映射减少 : how to store a list of LONGs in Hadoop Output

我有一个MapReduceJava程序,它输出一个数字列表作为String作为最终输出。但是数量比较长,占用空间太大。我想将每个数字转换为Long并存储。我怎样才能做到这一点? 最佳答案 ArrayWritable可以扩展为publicclassLongArrayWritableextendsArrayWritable{publicLongArrayWritable(){super(Text.class);}publicLongArrayWritable(LongWritable[]values){super(LongWritabl