【发布时间】:2017-12-18 19:46:48
【问题描述】:
我们正在通过 Kinesis Stream 处理数据(记录)到 Kinesis Firehose,然后将数据输出到 S3 存储桶中的文件。
然而,目前,所有记录都在我们的输出文件中的同一行,但我们希望将每条记录分开,以便它们在自己的行中。
而不是类似的东西:
Store1, 100, Broccoli
Store1, 101, Avocado
Store1, 102, Apple
目前看起来像:
Store1, 100, BroccoliStore1, 101, AvocadoStore1, 102, Apple
这是我们的 CloudFormation 模板:
Resources:
MyBucket:
Type: AWS::S3::Bucket
MyStream:
Type: AWS::Kinesis::Stream
Properties:
Name: my-stream
RetentionPeriodHours: 24
ShardCount: 5
MyFirehose:
Type: AWS::KinesisFirehose::DeliveryStream
Properties:
DeliveryStreamName: my-firehose
DeliveryStreamType: KinesisStreamAsSource
KinesisStreamSourceConfiguration:
KinesisStreamARN:
Fn::Sub: "${MyStream.Arn}"
RoleARN:
Fn::Sub: "${MyRole.Arn}"
S3DestinationConfiguration:
BufferingHints:
IntervalInSeconds: 60
SizeInMBs: 50
CompressionFormat: UNCOMPRESSED
Prefix: concessions/
BucketARN:
Fn::Sub: "${MyBucket.Arn}"
RoleARN:
Fn::Sub: "${MyRole.Arn}"
我们如何添加行分隔符,以便记录显示在自己的行上?
【问题讨论】:
-
“您可能希望在每条记录的末尾添加一个记录分隔符,然后再将其发送到 Kinesis Firehose,以便您可以将交付的 S3 对象划分为各个记录。”来自documentation,但没有关于如何使用 CloudFormation 执行此操作的信息
标签: amazon-cloudformation amazon-kinesis-firehose