Metadata-Version: 2.1
Name: aws-cdk.aws-kinesis
Version: 1.32.2
Summary: CDK Constructs for AWS Kinesis
Home-page: https://github.com/aws/aws-cdk
Author: Amazon Web Services
License: Apache-2.0
Project-URL: Source, https://github.com/aws/aws-cdk.git
Description: ## Amazon Kinesis Construct Library
        
        <!--BEGIN STABILITY BANNER-->---
        
        
        ![Stability: Experimental](https://img.shields.io/badge/stability-Experimental-important.svg?style=for-the-badge)
        
        > **This is a *developer preview* (public beta) module.**
        >
        > All classes with the `Cfn` prefix in this module ([CFN Resources](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_lib))
        > are auto-generated from CloudFormation. They are stable and safe to use.
        >
        > However, all other classes, i.e., higher level constructs, 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](https://semver.org/) 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.
        
        ---
        <!--END STABILITY BANNER-->
        
        [Amazon Kinesis](https://docs.aws.amazon.com/streams/latest/dev/introduction.html) provides collection and processing of large
        [streams](https://aws.amazon.com/streaming-data/) of data records in real time. Kinesis data streams can be used for rapid and continuous data
        intake and aggregation.
        
        ## Table Of Contents
        
        * [Streams](#streams)
        
          * [Encryption](#encryption)
          * [Import](#import)
        
        ## Streams
        
        Amazon Kinesis Data Streams ingests a large amount of data in real time, durably stores the data, and makes the data available for consumption.
        
        Using the CDK, a new Kinesis stream can be created as part of the stack using the construct's constructor. You may specify the `streamName` to give
        your own identifier to the stream. If not, CloudFormation will generate a name.
        
        ```python
        # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
        Stream(self, "MyFirstStream",
            stream_name="my-awesome-stream"
        )
        ```
        
        You can also specify properties such as `shardCount` to indicate how many shards the stream should choose and a `retentionPeriod`
        to specify how long the data in the shards should remain accessible.
        Read more at [Creating and Managing Streams](https://docs.aws.amazon.com/streams/latest/dev/working-with-streams.html)
        
        ```python
        # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
        Stream(self, "MyFirstStream",
            stream_name="my-awesome-stream",
            shard_count=3,
            retention_period=Duration.hours(48)
        )
        ```
        
        ### Encryption
        
        [Stream encryption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-stream-streamencryption.html) enables
        server-side encryption using an AWS KMS key for a specified stream.
        
        Encryption is enabled by default on your stream with the master key owned by Kinesis Data Streams in regions where it is supported.
        
        ```python
        # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
        Stream(self, "MyEncryptedStream")
        ```
        
        You can enable encryption on your stream with a user-managed key by specifying the `encryption` property.
        A KMS key will be created for you and associated with the stream.
        
        ```python
        # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
        Stream(self, "MyEncryptedStream",
            encryption=StreamEncryption.KMS
        )
        ```
        
        You can also supply your own external KMS key to use for stream encryption by specifying the `encryptionKey` property.
        
        ```python
        # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
        import aws_cdk.aws_kms as kms
        
        key = kms.Key(self, "MyKey")
        
        Stream(self, "MyEncryptedStream",
            encryption=StreamEncryption.KMS,
            encryption_key=key
        )
        ```
        
        ### Import
        
        Any Kinesis stream that has been created outside the stack can be imported into your CDK app.
        
        Streams can be imported by their ARN via the `Stream.fromStreamArn()` API
        
        ```python
        # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
        stack = Stack(app, "MyStack")
        
        imported_stream = Stream.from_stream_arn(stack, "ImportedStream", "arn:aws:kinesis:us-east-2:123456789012:stream/f3j09j2230j")
        ```
        
        Encrypted Streams can also be imported by their attributes via the `Stream.fromStreamAttributes()` API
        
        ```python
        # Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
        from aws_cdk.aws_kms import Key
        
        stack = Stack(app, "MyStack")
        
        imported_stream = Stream.from_stream_attributes(stack, "ImportedEncryptedStream",
            stream_arn="arn:aws:kinesis:us-east-2:123456789012:stream/f3j09j2230j",
            encryption_key=kms.Key.from_key_arn("arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012")
        )
        ```
        
Platform: UNKNOWN
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: JavaScript
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Typing :: Typed
Classifier: Development Status :: 4 - Beta
Classifier: License :: OSI Approved
Requires-Python: >=3.6
Description-Content-Type: text/markdown
