您的位置:首页 > 其它

Amazon Kinesis简介

2017-03-01 17:22 471 查看
Amazon Kinesis是提供流式计算的云服务。

Architecture架构:

producer_a                                                          Kinesis Application 1       -> Amazon S3

producer_b            ->   Amazon Kinesis     ->     

...                                                                         Kinesis Application 2       -> DynamoDB

producer_x

Terms:

1 Data Record

数据单元,存储在Amazon Kinesis Stream,由序列号,分区键和data blob组成,data blob最大为50KB。

2 Stream

是一个有序的data records序列。

3 Shard

是在Stream中唯一的可识别的data record集合。每个shard支持5个reads per second或者2MB read per second。1000个writes per second或者1MB write per second。所以Stream的处理能力就是根据shard数量算出来的。

4 Partition Key

不同的data records就是根据这个键来决定进入哪个Shard的。

5 Sequence Number

当客户端调用client.putRecord时,Kinesis会根据partition key来决定是哪个shard,然后分配这个shard的当前序列号加一,注意这个序列号是在shard中唯一的,递增的。

6 Amazon Kinesis Application

这个就是消费者,输入就是读取Shard中的data records。输出可以放入S3,也可以放入DynamoDB,还可以继续向另一个Kinesis产生新的data records。

决定你的Kinesis需要多少个Shards?

number_of_shards = max(incoming_write_bandwidth_in_KB/1000, outgoing_read_bandwidth_in_KB/2000)

incoming_write_bandwidth_in_KB =  average_data_size_in_KB multiplied by the number_of_transactions_per_seconds.

outgoing_read_bandwidth_in_KB = incoming_write_bandwidth_in_KB multiplied by the number_of_consumers.

原文:http://blog.csdn.net/hongchangfirst/article/details/54406912

作者:hongchangfirst

hongchangfirst的主页:http://blog.csdn.net/hongchangfirst
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: