0.8.1 • Published 5 years ago

@aws-solutions-konstruk/aws-kinesisfirehose-s3-and-kinesisanalytics v0.8.1

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
5 years ago

aws-kinesisfirehose-s3-and-kinesisanalytics module


Stability: Experimental

This is a developer preview (public beta) module.

All classes are under active development and subject to non-backward compatible changes or removal in any future version. These are not subject to the Semantic Versioning model. This means that while you may use them, you may need to update your source code when upgrading to a newer version of this package.


API Reference:http://docs.awssolutionsbuilder.com/aws-solutions-konstruk/latest/api/aws-kinesisfirehose-s3-and-kinesisanalytics/
LanguagePackage
Python Logo{: style="height:16px;width:16px"} Pythonaws_solutions_konstruk.aws_kinesisfirehose_s3_and_kinesisanalytics
Typescript Logo{: style="height:16px;width:16px"} Typescript@aws-solutions-konstruk/aws-kinesisfirehose-s3-and-kinesisanalytics

This AWS Solutions Konstruk implements an Amazon Kinesis Firehose delivery stream connected to: 1. An Amazon S3 bucket, and 1. An Amazon Kinesis Analytics application.

Here is a minimal deployable pattern definition:

const { KinesisFirehoseToAnalyticsAndS3 } = require('@aws-solutions-konstruk/aws-kinesisfirehose-s3-and-kinesisanalytics');

new KinesisFirehoseToAnalyticsAndS3(stack, 'FirehoseToS3AndAnalyticsPattern', {
    kinesisAnalyticsProps: {
        inputs: [{
            inputSchema: {
                recordColumns: [{
                    name: 'ticker_symbol',
                    sqlType: 'VARCHAR(4)',
                    mapping: '$.ticker_symbol'
                }, {
                    name: 'sector',
                    sqlType: 'VARCHAR(16)',
                    mapping: '$.sector'
                }, {
                    name: 'change',
                    sqlType: 'REAL',
                    mapping: '$.change'
                }, {
                    name: 'price',
                    sqlType: 'REAL',
                    mapping: '$.price'
                }],
                recordFormat: {
                    recordFormatType: 'JSON'
                },
                recordEncoding: 'UTF-8'
            },
            namePrefix: 'SOURCE_SQL_STREAM'
        }]
    }
});

Initializer

new KinesisFirehoseToAnalyticsAndS3(scope: Construct, id: string, props: KinesisFirehoseToAnalyticsAndS3Props);

Parameters

Pattern Construct Props

NameTypeDescription
kinesisFirehoseProps?kinesisFirehose.CfnDeliveryStreamPropsOptional user-provided props to override the default props for the Kinesis Firehose delivery stream.
kinesisAnalyticsProps?kinesisAnalytics.CfnApplicationPropsOptional user-provided props to override the default props for the Kinesis Analytics application.
deployBucket?booleanWhether to create a S3 Bucket or use an existing S3 Bucket
existingBucketObj?s3.BucketExisting instance of S3 Bucket object
bucketProps?s3.BucketPropsOptional user provided props to override the default props for S3 Bucket

Pattern Properties

NameTypeDescription
kinesisAnalytics()kinesisAnalytics.CfnApplicationReturns an instance of the Kinesis Analytics application created by the pattern.
kinesisFirehose()kinesisFirehose.CfnDeliveryStreamReturns an instance of the Kinesis Firehose delivery stream created by the pattern.
bucket()s3.BucketReturns an instance of the S3 bucket created by the pattern.

Architecture

Architecture Diagram


© Copyright 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.