aws-kinesisfirehose-s3-et-kinesisanalytics - Constructions dans les Solutions d'AWS

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

aws-kinesisfirehose-s3-et-kinesisanalytics

Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans n'importe quelle version future. Celles-ci ne sont pas assujetties à laGestion de versions sémantiquesModèle. Cela signifie que même si vous pouvez les utiliser, vous devrez peut-être mettre à jour votre code source lors de la mise à niveau vers une version plus récente de ce package.

Remarque: Pour garantir une bonne fonctionnalité, les packages AWS Solutions Constructs et AWS CDK de votre projet doivent être la même version.

Langage Package
Python
aws_solutions_constructs.aws_kinesisfirehose_s3_and_kinesisanalytics
TypeScript
@aws-solutions-constructs/aws-kinesisfirehose-s3-and-kinesisanalytics
Java
software.amazon.awsconstructs.services.kinesisfirehoses3kinesisanalytics

Overview

Cette solution AWS Construct implémente un flux de distribution Amazon Kinesis Firehose connecté à un compartiment Amazon S3 et à une application Amazon Kinesis Analytics.

Voici une définition de modèle déployable minimale dans TypeScript :

import { KinesisFirehoseToAnalyticsAndS3 } from '@aws-solutions-constructs/aws-kinesisfirehose-s3-and-kinesisanalytics'; new KinesisFirehoseToAnalyticsAndS3(this, '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);

Paramètres

Accessoires de construction de modèle

Nom Type Description
KinesisFireHoseProps ? kinesisFirehose.CfnDeliveryStreamProps Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut pour le flux de distribution Kinesis Firehose.
KinesisAnalyticsProps ? kinesisAnalytics.CfnApplicationProps Props fournis par l'utilisateur en option pour remplacer les accessoires par défaut de l'application Kinesis Analytics.
Bucketobj existant ? s3.IBucket Instance existante de l'objet S3 Bucket. Si cela est fourni, alors fournir égalementbucketPropsest une erreur. |
BucketProps ? s3.BucketProps Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut du compartiment. Ignoré siexistingBucketObjest fourni.
LogGroupProps ? logs.LogGroupProps Accessoires fournis par l'utilisateur facultatifs pour remplacer les accessoires par défaut du groupe de journaux CloudWatch Logs.

Propriétés du modèle

Nom Type Description
KinesisAnalytics kinesisAnalytics.CfnApplication Renvoie une instance de l'application Kinesis Analytics créée par le modèle.
KinesisFireHose kinesisfirehose.CfnDeliveryStream Renvoie une instance du flux de livraison Kinesis Firehose créé par le modèle.
KineSisFireHoselogGroup logs.LogGroup Renvoie une instance du groupe de journaux créé par le modèle auquel les journaux d'accès Kinesis Firehose sont envoyés.
KineSisFireHoserole iam.Role Renvoie une instance du rôle IAM créé par le modèle pour le flux de livraison Kinesis Firehose.
S3Bucket ? s3.Bucket Renvoie une instance du compartiment S3 créé par le modèle.
S3LoggingBucket ? s3.Bucket Renvoie une instance du compartiment de journalisation créé par le modèle pour le compartiment S3.

Paramètres par défaut

L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :

Amazon Kinesis Firehose

  • Activer la journalisation CloudWatch pour Kinesis Firehose

  • Configurer le rôle IAM d'accès minimal aux privilèges pour Amazon Kinesis Firehose

Amazon S3.

  • Configurer la journalisation d'accès pour le compartiment S3

  • Activer le chiffrement côté serveur pour le compartiment S3 à l'aide de la clé KMS gérée par AWS

  • Activer le contrôle de version pour S3 Bucket

  • Ne pas autoriser l'accès public pour le compartiment S3

  • Conserver le compartiment S3 lors de la suppression de la pile CloudFormation

  • Application du chiffrement des données en transit

  • Applique la règle de cycle de vie pour déplacer les versions d'objets non actuelles vers le stockage Glacier après 90 jours

Amazon Kinesis Data Analytics

  • Configurer le rôle IAM d'accès minimal aux privilèges pour Amazon Kinesis Analytics

Architecture

GitHub

Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore :
@aws -solutions-constructs/aws-kinesisfirehose-s3-et-kinesisanalytics