两年前,我们引入了 Amazon Kinesis,现在我们称之为Kinesis Streams,使你能够构建应用,以很高的吞吐量来收集,处理和分析流数据。我们想使你不用考虑构建和运行摄入服务器舰队或担忧监控,伸缩或交付可靠性。 Amazon Kinesis Firehose是为特定用途构建的,旨在使你能够更轻松地将流数据加载到AWS中。你仅仅创建一个交付流,将其路由到一个 Amazon Simple Storage Service (S3)桶中和/或一个 Amazon Redshift表中,将记录(每条记录最大1000KB)写入到流中。在这些场景背后,Firehose 将会为你料理好监控,伸缩,和数据管理所有这些方面。 再一次(我从不厌烦说这句),你可以花费更多的时间聚焦于你的应用,耗费较少的时间在基础设施上。 Firehose 内部机制 为了使事情保持简单,Firehose 不以任何方式对原始数据进行翻译或处理。你仅仅创建一个交付流,将数据记录写入该流中。在任何应要求而进行的压缩(客户端侧)和加密(服务器侧)后,记录被写入你指定的一个S3桶中。正如我的同事 James Hamilton(在其他语境中)喜欢说的那样,“它是那样地简单。”如果有必要,你甚至可以控制数据流缓冲区大小和缓冲间隔。 如果你的客户端代码在将记录送到Firehose 前对单个的逻辑记录进行隔离,它可以添加一个分隔符。否则,你可以稍后,一旦数据进入到云中,再识别记录的界限。 你的数据在S3中存储后,你有多种选择对其进行分析和处理。例如,你可以将一个 AWS Lambda函数附加到桶中,在对象到达桶中时对其进行处理。或者,你可以将你既存的 Amazon EMR任务指向该桶,不需对任务做任何改动即可使其处理最新数据。 你也可以使用Firehose ,将你的数据路由到一个 Amazon Redshift集群。在Firehose 将你的原始数据存储到S3对象中后,它可以在每一个对象中调用一个Redshift COPY命令。这一命令很灵活,使你能够导入和处理多种格式(CVS,JSON,AVRO等等)的数据,仅隔离和存储筛选的列,将数据从一种类型转换为另一种类型,等等。 Firehose特性在控制台中的使用 你可以在 AWS Management Console(AWS管理控制台), AWS Command Line Interface (CLI,AWS命令行界面),或通过Firehose API完成以上功能。 让我们使用Firehose 控制台来创建一个交付流。我仅仅打开控制台,点击Create Delivery Stream。然后,我给我的交付流赋予了一个名称,选择了一个S3桶(或者创建一个新桶),创建一个IAM角色以便Firehose有权限向桶中写入数据: 我可以为交付流配置时延和压缩操作。我也可以选择使用我的一个 AWS Key Management Service(KMS,密钥管理业务)密钥加密数据: 一旦我的交付流创建完毕,我就可以在控制台中看到它了。 发布到一个交付流 下面是一些简单的Java代码,用来将一条记录(字符串“some data”)发布到我的流中:
PutRecordRequest putRecordRequest = new PutRecordRequest(); putRecordRequest.setFirehoseName("incoming-stream"); String data = "some data" + "/n"; // add /n as a record separator Record record = new Record(); record.setData(ByteBuffer.wrap(data.getBytes(StandardCharsets.UTF_8))); putRecordRequest.setRecord(record); firehoseClient.putRecord(putRecordRequest);
下面是在使用CLI环境下将记录发布到流中所使用的代码:
$ aws firehose put-record --delivery-stream-name incoming-stream --record Data="some data/n"
我们也提供了一个运行Linux 操作系统的代理。可以配置该代理监控另一个日志文件,并将它们路由到Firehose。
监控Kinesis Firehose 交付流
你可以在控制台中监控你的每一个交付流的CloudWatch 测量指标:
特性有关的数值
单个的交付流可以伸缩,每个小时可容纳多个十亿字节的数据。默认情况下,每一个流每秒可支持2500次对PutRecord或PutRecordBatch的调用,每个AWS账户你可以有多达五个流(这两个值都是管理者设置的限制,根据请求可以增加,所以只问问你是否需要设置更大的数值)。
该特性现在已可用了,你今天就可以开始使用它了。它是根据每个Firehose 摄入的数据量的大小定价的。
原文链接:https://aws.amazon.com/cn/blogs/aws/amazon-kinesis-firehose-simple-highly-scalable-data-ingestion/
活动推荐:亚马逊AWS云计算研讨会之云中的安全部署与开发运维( 广州站)
( 翻译/吕冬梅 责编/王鑫贺 )
订阅“AWS中文技术社区”微信公众号,实时掌握AWS技术及产品消息!
AWS中文技术社区为广大开发者提供了一个Amazon Web Service技术交流平台,推送AWS最新资讯、技术视频、技术文档、精彩技术博文等相关精彩内容,更有AWS社区专家与您直接沟通交流!快加入AWS中文技术社区,更快更好的了解AWS云计算技术。
本网页所有文字内容由 imapbox邮箱云存储,邮箱网盘, iurlBox网页地址收藏管理器 下载并得到。
ImapBox 邮箱网盘 工具地址: https://www.imapbox.com/download/ImapBox.5.5.1_Build20141205_CHS_Bit32.exe
PC6下载站地址:PC6下载站分流下载
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox 网页视频 工具地址: https://www.imapbox.com/download/ImovieBox4.7.0_Build20141115_CHS.exe
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算
官方软件产品操作指南 (170)