class Aws::KinesisAnalytics::Types::Input

When you configure the application input, you specify the streaming source, the in-application stream name that is created, and the mapping between the two. For more information, see [Configuring Application Input].

[1]: docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-input.html

@note When making an API call, you may pass Input

data as a hash:

    {
      name_prefix: "InAppStreamName", # required
      input_processing_configuration: {
        input_lambda_processor: { # required
          resource_arn: "ResourceARN", # required
          role_arn: "RoleARN", # required
        },
      },
      kinesis_streams_input: {
        resource_arn: "ResourceARN", # required
        role_arn: "RoleARN", # required
      },
      kinesis_firehose_input: {
        resource_arn: "ResourceARN", # required
        role_arn: "RoleARN", # required
      },
      input_parallelism: {
        count: 1,
      },
      input_schema: { # required
        record_format: { # required
          record_format_type: "JSON", # required, accepts JSON, CSV
          mapping_parameters: {
            json_mapping_parameters: {
              record_row_path: "RecordRowPath", # required
            },
            csv_mapping_parameters: {
              record_row_delimiter: "RecordRowDelimiter", # required
              record_column_delimiter: "RecordColumnDelimiter", # required
            },
          },
        },
        record_encoding: "RecordEncoding",
        record_columns: [ # required
          {
            name: "RecordColumnName", # required
            mapping: "RecordColumnMapping",
            sql_type: "RecordColumnSqlType", # required
          },
        ],
      },
    }

@!attribute [rw] name_prefix

Name prefix to use when creating an in-application stream. Suppose
that you specify a prefix "MyInApplicationStream." Amazon Kinesis
Analytics then creates one or more (as per the `InputParallelism`
count you specified) in-application streams with names
"MyInApplicationStream\_001," "MyInApplicationStream\_002," and
so on.
@return [String]

@!attribute [rw] input_processing_configuration

The [InputProcessingConfiguration][1] for the input. An input
processor transforms records as they are received from the stream,
before the application's SQL code executes. Currently, the only
input processing configuration available is
[InputLambdaProcessor][2].

[1]: https://docs.aws.amazon.com/kinesisanalytics/latest/dev/API_InputProcessingConfiguration.html
[2]: https://docs.aws.amazon.com/kinesisanalytics/latest/dev/API_InputLambdaProcessor.html
@return [Types::InputProcessingConfiguration]

@!attribute [rw] kinesis_streams_input

If the streaming source is an Amazon Kinesis stream, identifies the
stream's Amazon Resource Name (ARN) and an IAM role that enables
Amazon Kinesis Analytics to access the stream on your behalf.

Note: Either `KinesisStreamsInput` or `KinesisFirehoseInput` is
required.
@return [Types::KinesisStreamsInput]

@!attribute [rw] kinesis_firehose_input

If the streaming source is an Amazon Kinesis Firehose delivery
stream, identifies the delivery stream's ARN and an IAM role that
enables Amazon Kinesis Analytics to access the stream on your
behalf.

Note: Either `KinesisStreamsInput` or `KinesisFirehoseInput` is
required.
@return [Types::KinesisFirehoseInput]

@!attribute [rw] input_parallelism

Describes the number of in-application streams to create.

Data from your source is routed to these in-application input
streams.

(see [Configuring Application Input][1].

[1]: https://docs.aws.amazon.com/kinesisanalytics/latest/dev/how-it-works-input.html
@return [Types::InputParallelism]

@!attribute [rw] input_schema

Describes the format of the data in the streaming source, and how
each data element maps to corresponding columns in the
in-application stream that is being created.

Also used to describe the format of the reference data source.
@return [Types::SourceSchema]

@see docs.aws.amazon.com/goto/WebAPI/kinesisanalytics-2015-08-14/Input AWS API Documentation

Constants

SENSITIVE