All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.gridgain.grid.ggfs.mapreduce.GridGgfsTaskArgs Maven / Gradle / Ivy

Go to download

Java-based middleware for in-memory processing of big data in a distributed environment.

There is a newer version: 6.2.1-p1
Show newest version
/* 
 Copyright (C) GridGain Systems. All Rights Reserved.
 
 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0
 
 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
 */

/*  _________        _____ __________________        _____
 *  __  ____/___________(_)______  /__  ____/______ ____(_)_______
 *  _  / __  __  ___/__  / _  __  / _  / __  _  __ `/__  / __  __ \
 *  / /_/ /  _  /    _  /  / /_/ /  / /_/ /  / /_/ / _  /  _  / / /
 *  \____/   /_/     /_/   \_,__/   \____/   \__,_/  /_/   /_/ /_/
 */

package org.gridgain.grid.ggfs.mapreduce;

import org.gridgain.grid.ggfs.*;

import java.util.*;

/**
 * GGFS task arguments. When you initiate new GGFS task execution using one of {@code GridGgfs.execute(...)} methods,
 * all passed parameters are encapsulated in a single {@code GridGgfsTaskArgs} object. Later on this object is
 * passed to {@link GridGgfsTask#createJob(GridGgfsPath, GridGgfsFileRange, GridGgfsTaskArgs)} method.
 * 

* Task arguments encapsulates the following data: *

    *
  • GGFS name
  • *
  • File paths passed to {@code GridGgfs.execute()} method
  • *
  • {@link GridGgfsRecordResolver} for that task
  • *
  • Flag indicating whether to skip non-existent file paths or throw an exception
  • *
  • User-defined task argument
  • *
  • Maximum file range length for that task (see {@link GridGgfsConfiguration#getMaximumTaskRangeLength()})
  • *
*/ public interface GridGgfsTaskArgs { /** * Gets GGFS name. * * @return GGFS name. */ public String ggfsName(); /** * Gets file paths to process. * * @return File paths to process. */ public Collection paths(); /** * Gets record resolver for the task. * * @return Record resolver. */ public GridGgfsRecordResolver recordResolver(); /** * Flag indicating whether to fail or simply skip non-existent files. * * @return {@code True} if non-existent files should be skipped. */ public boolean skipNonExistentFiles(); /** * User argument provided for task execution. * * @return User argument. */ public T userArgument(); /** * Optional maximum allowed range length, {@code 0} by default. If not specified, full range including * all consecutive blocks will be used without any limitations. * * @return Maximum range length. */ public long maxRangeLength(); }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy