com.amazonaws.services.elasticmapreduce
Interface AmazonElasticMapReduceAsync

All Superinterfaces:
AmazonElasticMapReduce
All Known Implementing Classes:
AmazonElasticMapReduceAsyncClient

public interface AmazonElasticMapReduceAsync
extends AmazonElasticMapReduce

Interface for accessing AmazonElasticMapReduce asynchronously, using Java Futures.

Elastic MapReduce is a web service that makes it easy to process vast amounts of data using Amazon Simple Storage Service (Amazon S3), where data is stored, and a cluster of Amazon Elastic Compute Cloud (EC2) instances, where that data is processed. Elastic MapReduce uses Hadoop processing to do such things as web indexing, data mining, log file analysis, machine learning, scientific simulation, and bioinformatics research.


Method Summary
 Future<Void> addJobFlowStepsAsync(AddJobFlowStepsRequest addJobFlowStepsRequest)
           Adds new steps to a job flow already loaded on an EC2 cluster.
 Future<DescribeJobFlowsResult> describeJobFlowsAsync(DescribeJobFlowsRequest describeJobFlowsRequest)
           Returns extensive details about specified job flows.
 Future<RunJobFlowResult> runJobFlowAsync(RunJobFlowRequest runJobFlowRequest)
           Creates a new job flow and EC2 cluster, and then executes the job flow steps on the cluster.
 Future<Void> terminateJobFlowsAsync(TerminateJobFlowsRequest terminateJobFlowsRequest)
           Terminates job flow processing, uploads data from EC2 to Amazon S3, and terminates the EC2 cluster.
 
Methods inherited from interface com.amazonaws.services.elasticmapreduce.AmazonElasticMapReduce
addJobFlowSteps, describeJobFlows, describeJobFlows, runJobFlow, setEndpoint, terminateJobFlows
 

Method Detail

addJobFlowStepsAsync

Future<Void> addJobFlowStepsAsync(AddJobFlowStepsRequest addJobFlowStepsRequest)
                                  throws AmazonServiceException,
                                         AmazonClientException

Adds new steps to a job flow already loaded on an EC2 cluster. Each step applies an algorithm to the data set, for the first step, or to the data returned by the previous step in the job flow. If the job flow isn't executing any other steps, execution begins from the first added step. The maximum number of steps in a job flow is 256.

Parameters:
addJobFlowStepsRequest - Container for the necessary parameters to execute the AddJobFlowSteps operation on AmazonElasticMapReduce.
Returns:
A Java Future object containing the response from the AddJobFlowSteps service method, as returned by AmazonElasticMapReduce.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonElasticMapReduce indicating either a problem with the data in the request, or a server side issue.

terminateJobFlowsAsync

Future<Void> terminateJobFlowsAsync(TerminateJobFlowsRequest terminateJobFlowsRequest)
                                    throws AmazonServiceException,
                                           AmazonClientException

Terminates job flow processing, uploads data from EC2 to Amazon S3, and terminates the EC2 cluster. Use this action to terminate a single job flow or list of job flows. Job flows that complete successfully terminate automatically unless the job flow's KeepJobFlowAliveWhenNoSteps field is set to true when provided to the RunJobFlows operation.

Parameters:
terminateJobFlowsRequest - Container for the necessary parameters to execute the TerminateJobFlows operation on AmazonElasticMapReduce.
Returns:
A Java Future object containing the response from the TerminateJobFlows service method, as returned by AmazonElasticMapReduce.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonElasticMapReduce indicating either a problem with the data in the request, or a server side issue.

describeJobFlowsAsync

Future<DescribeJobFlowsResult> describeJobFlowsAsync(DescribeJobFlowsRequest describeJobFlowsRequest)
                                                     throws AmazonServiceException,
                                                            AmazonClientException

Returns extensive details about specified job flows. The client specifies job flows by their ID, creation date, or state. Elastic MapReduce returns descriptions of job flows that are up to two months old. Specifying a date older than two months returns an error. The maximum number of job flow descriptions that are returned is 512.

Each input parameter acts as a filter so that Elastic MapReduce returns information about a more precise set of job flows with each parameter that is used in the request. If parameters are not included in a request, Elastic MapReduce returns descriptions of all job flows that have:

Parameters:
describeJobFlowsRequest - Container for the necessary parameters to execute the DescribeJobFlows operation on AmazonElasticMapReduce.
Returns:
A Java Future object containing the response from the DescribeJobFlows service method, as returned by AmazonElasticMapReduce.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonElasticMapReduce indicating either a problem with the data in the request, or a server side issue.

runJobFlowAsync

Future<RunJobFlowResult> runJobFlowAsync(RunJobFlowRequest runJobFlowRequest)
                                         throws AmazonServiceException,
                                                AmazonClientException

Creates a new job flow and EC2 cluster, and then executes the job flow steps on the cluster. When the job flow finishes, depending on the specified parameter values, RunJobFlow terminates the EC2 cluster and uploads results to a specified Amazon S3 bucket.

NOTE: When running a new job flow, the following restrictions apply: The maximum lifetime of a job flow is 2 weeks. The maximum number of steps allowed in a job flow is 256.

Parameters:
runJobFlowRequest - Container for the necessary parameters to execute the RunJobFlow operation on AmazonElasticMapReduce.
Returns:
A Java Future object containing the response from the RunJobFlow service method, as returned by AmazonElasticMapReduce.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonElasticMapReduce indicating either a problem with the data in the request, or a server side issue.


Copyright © 2010 Amazon Web Services, Inc. All Rights Reserved.