amazonka-datapipeline-1.3.3.1: Amazon Data Pipeline SDK.

Copyright(c) 2013-2015 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.DataPipeline

Contents

Description

AWS Data Pipeline configures and manages a data-driven workflow called a pipeline. AWS Data Pipeline handles the details of scheduling and ensuring that data dependencies are met so that your application can focus on processing the data.

AWS Data Pipeline provides a JAR implementation of a task runner called AWS Data Pipeline Task Runner. AWS Data Pipeline Task Runner provides logic for common data management scenarios, such as performing database queries and running data analysis using Amazon Elastic MapReduce (Amazon EMR). You can use AWS Data Pipeline Task Runner as your task runner, or you can write your own task runner to provide custom data management.

AWS Data Pipeline implements two main sets of functionality. Use the first set to create a pipeline and define data sources, schedules, dependencies, and the transforms to be performed on the data. Use the second set in your task runner application to receive the next task ready for processing. The logic for performing the task, such as querying the data, running data analysis, or converting the data from one format to another, is contained within the task runner. The task runner performs the task assigned to it by the web service, reporting progress to the web service as it does so. When the task is done, the task runner reports the final success or failure of the task to the web service.

See: AWS API Reference

Synopsis

Service Configuration

dataPipeline :: Service Source

API version '2012-10-29' of the Amazon Data Pipeline SDK configuration.

Errors

Error matchers are designed for use with the functions provided by Control.Exception.Lens. This allows catching (and rethrowing) service specific errors returned by DataPipeline.

InvalidRequestException

_InvalidRequestException :: AsError a => Getting (First ServiceError) a ServiceError Source

The request was not valid. Verify that your request was properly formatted, that the signature was generated with the correct credentials, and that you haven't exceeded any of the service limits for your account.

InternalServiceError

_InternalServiceError :: AsError a => Getting (First ServiceError) a ServiceError Source

An internal service error occurred.

PipelineDeletedException

_PipelineDeletedException :: AsError a => Getting (First ServiceError) a ServiceError Source

The specified pipeline has been deleted.

PipelineNotFoundException

_PipelineNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError Source

The specified pipeline was not found. Verify that you used the correct user and account identifiers.

TaskNotFoundException

_TaskNotFoundException :: AsError a => Getting (First ServiceError) a ServiceError Source

The specified task was not found.

Waiters

Waiters poll by repeatedly sending a request until some remote success condition configured by the Wait specification is fulfilled. The Wait specification determines how many attempts should be made, in addition to delay and retry strategies.

Operations

Some AWS operations return results that are incomplete and require subsequent requests in order to obtain the entire result set. The process of sending subsequent requests to continue where a previous request left off is called pagination. For example, the ListObjects operation of Amazon S3 returns up to 1000 objects at a time, and you must send subsequent requests with the appropriate Marker in order to retrieve the next page of results.

Operations that have an AWSPager instance can transparently perform subsequent requests, correctly setting Markers and other request facets to iterate through the entire result set of a truncated API operation. Operations which support this have an additional note in the documentation.

Many operations have the ability to filter results on the server side. See the individual operation parameters for details.

DescribePipelines

QueryObjects (Paginated)

RemoveTags

DeletePipeline

ListPipelines (Paginated)

EvaluateExpression

GetPipelineDefinition

PollForTask

DeactivatePipeline

AddTags

DescribeObjects (Paginated)

ReportTaskRunnerHeartbeat

ActivatePipeline

SetTaskStatus

SetStatus

ReportTaskProgress

CreatePipeline

PutPipelineDefinition

ValidatePipelineDefinition

Types

OperatorType

TaskStatus

Field

data Field Source

A key-value pair that describes a property of a pipeline object. The value is specified as either a string value (StringValue) or a reference to another object (RefValue) but not as both.

See: field smart constructor.

field Source

Arguments

:: Text

fKey

-> Field 

Creates a value of Field with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

fRefValue :: Lens' Field (Maybe Text) Source

The field value, expressed as the identifier of another object.

fStringValue :: Lens' Field (Maybe Text) Source

The field value, expressed as a String.

fKey :: Lens' Field Text Source

The field identifier.

InstanceIdentity

data InstanceIdentity Source

Identity information for the EC2 instance that is hosting the task runner. You can get this value by calling a metadata URI from the EC2 instance. For more information, see Instance Metadata in the Amazon Elastic Compute Cloud User Guide. Passing in this value proves that your task runner is running on an EC2 instance, and ensures the proper AWS Data Pipeline service charges are applied to your pipeline.

See: instanceIdentity smart constructor.

instanceIdentity :: InstanceIdentity Source

Creates a value of InstanceIdentity with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

iiSignature :: Lens' InstanceIdentity (Maybe Text) Source

A signature which can be used to verify the accuracy and authenticity of the information provided in the instance identity document.

iiDocument :: Lens' InstanceIdentity (Maybe Text) Source

A description of an EC2 instance that is generated when the instance is launched and exposed to the instance via the instance metadata service in the form of a JSON representation of an object.

Operator

data Operator Source

Contains a logical operation for comparing the value of a field with a specified value.

See: operator smart constructor.

operator :: Operator Source

Creates a value of Operator with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

oValues :: Lens' Operator [Text] Source

The value that the actual field value will be compared with.

oType :: Lens' Operator (Maybe OperatorType) Source

The logical operation to be performed: equal (EQ), equal reference (REF_EQ), less than or equal (LE), greater than or equal (GE), or between (BETWEEN). Equal reference (REF_EQ) can be used only with reference fields. The other comparison types can be used only with String fields. The comparison types you can use apply only to certain object fields, as detailed below.

The comparison operators EQ and REF_EQ act on the following fields:

  • name
  • 'sphere
  • parent
  • 'componentParent
  • 'instanceParent
  • 'status
  • 'scheduledStartTime
  • 'scheduledEndTime
  • 'actualStartTime
  • 'actualEndTime

The comparison operators GE, LE, and BETWEEN act on the following fields:

  • 'scheduledStartTime
  • 'scheduledEndTime
  • 'actualStartTime
  • 'actualEndTime

Note that fields beginning with the at sign (') are read-only and set by the web service. When you name fields, you should choose names containing only alpha-numeric values, as symbols may be reserved by AWS Data Pipeline. User-defined fields that you add to a pipeline should prefix their name with the string "my".

ParameterAttribute

parameterAttribute Source

Creates a value of ParameterAttribute with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

paKey :: Lens' ParameterAttribute Text Source

The field identifier.

paStringValue :: Lens' ParameterAttribute Text Source

The field value, expressed as a String.

ParameterObject

parameterObject Source

Arguments

:: Text

poId

-> ParameterObject 

Creates a value of ParameterObject with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

poId :: Lens' ParameterObject Text Source

The ID of the parameter object.

poAttributes :: Lens' ParameterObject [ParameterAttribute] Source

The attributes of the parameter object.

ParameterValue

parameterValue Source

Creates a value of ParameterValue with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

pvId :: Lens' ParameterValue Text Source

The ID of the parameter value.

pvStringValue :: Lens' ParameterValue Text Source

The field value, expressed as a String.

PipelineDescription

pipelineDescription Source

Creates a value of PipelineDescription with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

pdDescription :: Lens' PipelineDescription (Maybe Text) Source

Description of the pipeline.

pdTags :: Lens' PipelineDescription [Tag] Source

A list of tags to associated with a pipeline. Tags let you control access to pipelines. For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide.

pdPipelineId :: Lens' PipelineDescription Text Source

The pipeline identifier that was assigned by AWS Data Pipeline. This is a string of the form 'df-297EG78HU43EEXAMPLE'.

pdName :: Lens' PipelineDescription Text Source

The name of the pipeline.

pdFields :: Lens' PipelineDescription [Field] Source

A list of read-only fields that contain metadata about the pipeline: 'userId, 'accountId, and 'pipelineState.

PipelineIdName

pipelineIdName :: PipelineIdName Source

Creates a value of PipelineIdName with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

pinName :: Lens' PipelineIdName (Maybe Text) Source

The name of the pipeline.

pinId :: Lens' PipelineIdName (Maybe Text) Source

The ID of the pipeline that was assigned by AWS Data Pipeline. This is a string of the form 'df-297EG78HU43EEXAMPLE'.

PipelineObject

data PipelineObject Source

Contains information about a pipeline object. This can be a logical, physical, or physical attempt pipeline object. The complete set of components of a pipeline defines the pipeline.

See: pipelineObject smart constructor.

pipelineObject Source

Arguments

:: Text

pId

-> Text

pName

-> PipelineObject 

Creates a value of PipelineObject with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

pId :: Lens' PipelineObject Text Source

The ID of the object.

pName :: Lens' PipelineObject Text Source

The name of the object.

pFields :: Lens' PipelineObject [Field] Source

Key-value pairs that define the properties of the object.

Query

data Query Source

Defines the query to run against an object.

See: query smart constructor.

query :: Query Source

Creates a value of Query with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

qSelectors :: Lens' Query [Selector] Source

List of selectors that define the query. An object must satisfy all of the selectors to match the query.

Selector

data Selector Source

A comparision that is used to determine whether a query should return this object.

See: selector smart constructor.

selector :: Selector Source

Creates a value of Selector with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

sOperator :: Lens' Selector (Maybe Operator) Source

Undocumented member.

sFieldName :: Lens' Selector (Maybe Text) Source

The name of the field that the operator will be applied to. The field name is the "key" portion of the field definition in the pipeline definition syntax that is used by the AWS Data Pipeline API. If the field is not set on the object, the condition fails.

Tag

data Tag Source

Tags are key/value pairs defined by a user and associated with a pipeline to control access. AWS Data Pipeline allows you to associate ten tags per pipeline. For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide.

See: tag smart constructor.

tag Source

Arguments

:: Text

tagKey

-> Text

tagValue

-> Tag 

Creates a value of Tag with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

tagKey :: Lens' Tag Text Source

The key name of a tag defined by a user. For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide.

tagValue :: Lens' Tag Text Source

The optional value portion of a tag defined by a user. For more information, see Controlling User Access to Pipelines in the AWS Data Pipeline Developer Guide.

TaskObject

data TaskObject Source

Contains information about a pipeline task that is assigned to a task runner.

See: taskObject smart constructor.

taskObject :: TaskObject Source

Creates a value of TaskObject with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

toPipelineId :: Lens' TaskObject (Maybe Text) Source

The ID of the pipeline that provided the task.

toAttemptId :: Lens' TaskObject (Maybe Text) Source

The ID of the pipeline task attempt object. AWS Data Pipeline uses this value to track how many times a task is attempted.

toTaskId :: Lens' TaskObject (Maybe Text) Source

An internal identifier for the task. This ID is passed to the SetTaskStatus and ReportTaskProgress actions.

toObjects :: Lens' TaskObject (HashMap Text PipelineObject) Source

Connection information for the location where the task runner will publish the output of the task.

ValidationError

data ValidationError Source

Defines a validation error. Validation errors prevent pipeline activation. The set of validation errors that can be returned are defined by AWS Data Pipeline.

See: validationError smart constructor.

validationError :: ValidationError Source

Creates a value of ValidationError with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

veId :: Lens' ValidationError (Maybe Text) Source

The identifier of the object that contains the validation error.

veErrors :: Lens' ValidationError [Text] Source

A description of the validation error.

ValidationWarning

data ValidationWarning Source

Defines a validation warning. Validation warnings do not prevent pipeline activation. The set of validation warnings that can be returned are defined by AWS Data Pipeline.

See: validationWarning smart constructor.

validationWarning :: ValidationWarning Source

Creates a value of ValidationWarning with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

vwWarnings :: Lens' ValidationWarning [Text] Source

A description of the validation warning.

vwId :: Lens' ValidationWarning (Maybe Text) Source

The identifier of the object that contains the validation warning.