Java Code Examples for org.apache.hadoop.mapreduce.lib.output.FileOutputCommitter#getWorkPath()
The following examples show how to use
org.apache.hadoop.mapreduce.lib.output.FileOutputCommitter#getWorkPath() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: HFileAppender.java From tajo with Apache License 2.0 | 6 votes |
@Override public void init() throws IOException { super.init(); Configuration taskConf = new Configuration(); Path stagingResultDir = new Path(stagingDir, TajoConstants.RESULT_DIR_NAME); taskConf.set(FileOutputFormat.OUTDIR, stagingResultDir.toString()); ExecutionBlockId ebId = taskAttemptId.getTaskId().getExecutionBlockId(); writerContext = new TaskAttemptContextImpl(taskConf, new TaskAttemptID(ebId.getQueryId().toString(), ebId.getId(), TaskType.MAP, taskAttemptId.getTaskId().getId(), taskAttemptId.getId())); HFileOutputFormat2 hFileOutputFormat2 = new HFileOutputFormat2(); try { writer = hFileOutputFormat2.getRecordWriter(writerContext); committer = new FileOutputCommitter(FileOutputFormat.getOutputPath(writerContext), writerContext); workingFilePath = committer.getWorkPath(); } catch (InterruptedException e) { throw new IOException(e.getMessage(), e); } LOG.info("Created hbase file writer: " + workingFilePath); }
Example 2
Source File: AdmmIterationOutputFormat.java From laser with Apache License 2.0 | 5 votes |
public Path getDefaultWorkFile(TaskAttemptContext context, String extension) throws IOException { FileOutputCommitter committer = (FileOutputCommitter) getOutputCommitter(context); String outputName = context.getConfiguration().get( "com.b5m.admm.iteration.output.name"); if (null == outputName) { return new Path(committer.getWorkPath(), "Z"); } return new Path(FileOutputFormat.getOutputPath(context), outputName); }
Example 3
Source File: TestStore.java From spork with Apache License 2.0 | 5 votes |
@Override public Path getDefaultWorkFile(TaskAttemptContext context, String extension) throws IOException { FileOutputCommitter committer = (FileOutputCommitter) super.getOutputCommitter(context); return new Path(committer.getWorkPath(), getUniqueFile(context, "part", extension)); }
Example 4
Source File: SafeFileOutputCommitterTest.java From datawave with Apache License 2.0 | 4 votes |
private void testConcurrentCommitTaskWithSubDir(int version) throws Exception { final Job job = Job.getInstance(); FileOutputFormat.setOutputPath(job, outDir); final Configuration conf = job.getConfiguration(); conf.set(MRJobConfig.TASK_ATTEMPT_ID, attempt); conf.setInt(FILEOUTPUTCOMMITTER_ALGORITHM_VERSION, version); conf.setClass("fs.file.impl", RLFS.class, FileSystem.class); FileSystem.closeAll(); final JobContext jContext = new JobContextImpl(conf, taskID.getJobID()); final FileOutputCommitter amCommitter = new SafeFileOutputCommitter(outDir, jContext); amCommitter.setupJob(jContext); final TaskAttemptContext[] taCtx = new TaskAttemptContextImpl[2]; taCtx[0] = new TaskAttemptContextImpl(conf, taskID); taCtx[1] = new TaskAttemptContextImpl(conf, taskID1); final TextOutputFormat[] tof = new TextOutputFormat[2]; for (int i = 0; i < tof.length; i++) { tof[i] = new TextOutputFormat() { @Override public Path getDefaultWorkFile(TaskAttemptContext context, String extension) throws IOException { final FileOutputCommitter foc = (FileOutputCommitter) getOutputCommitter(context); return new Path(new Path(foc.getWorkPath(), SUB_DIR), getUniqueFile(context, getOutputName(context), extension)); } }; } final ExecutorService executor = Executors.newFixedThreadPool(2); try { for (int i = 0; i < taCtx.length; i++) { final int taskIdx = i; executor.submit((Callable<Void>) () -> { final OutputCommitter outputCommitter = tof[taskIdx].getOutputCommitter(taCtx[taskIdx]); outputCommitter.setupTask(taCtx[taskIdx]); final RecordWriter rw = tof[taskIdx].getRecordWriter(taCtx[taskIdx]); writeOutput(rw, taCtx[taskIdx]); outputCommitter.commitTask(taCtx[taskIdx]); return null; }); } } finally { executor.shutdown(); while (!executor.awaitTermination(1, TimeUnit.SECONDS)) { LOG.info("Awaiting thread termination!"); } } amCommitter.commitJob(jContext); final RawLocalFileSystem lfs = new RawLocalFileSystem(); lfs.setConf(conf); assertFalse("Must not end up with sub_dir/sub_dir", lfs.exists(new Path(OUT_SUB_DIR, SUB_DIR))); // validate output validateContent(OUT_SUB_DIR); FileUtil.fullyDelete(new File(outDir.toString())); }
Example 5
Source File: CustomFileNameFileOutputFormat.java From aegisthus with Apache License 2.0 | 2 votes |
/** * Get the default path and filename for the output format. * @param context the task context * @param extension an extension to add to the filename * @return a full path $output/_temporary/$task-id/part-[mr]-$id * @throws java.io.IOException */ @Override public Path getDefaultWorkFile(TaskAttemptContext context, String extension) throws IOException { FileOutputCommitter committer = (FileOutputCommitter) getOutputCommitter(context); return new Path(committer.getWorkPath(), getCustomFileName(context, getOutputName(context), extension)); }