AWS 云
开始使用流数据

Apache Kafka 是一种开源的分布式消息收发系统,通过它,您可以使用流数据构建实时应用程序。 您可以向您的 Kafka 集群发送网站点击流、金融交易和应用程序日志等流数据,它会缓冲数据,并将其提供给构建于 Apache Spark Streaming、Apache Storm 或 Apache Samza 等框架上的流处理应用程序。

diagram-kafka

通过在 Amazon EC2 上运行您的 Kafka 部署,即可提供一个性能出色且可扩展的解决方案来接收流数据。要在 Amazon EC2 上部署 Kafka,您需要选择并预置您的 EC2 实例类型、安装并配置 Kafka 和 Apache Zookeeper 等软件组件,然后使用 Amazon Elastic Block Store (EBS) 预置所需的块存储以适应您的流数据吞吐量。为了帮助您的 Kafka 集群应对意外事件(如数据量峰值超出流的容量),您可以使用 Apache Zookeeper 构建副本,该工具会持续跟踪 Kafka 集群中的节点并调整进程在各节点间的分配情况。安装 Kafka 后,您需要部署 HTTPS、维护证书授权并配置用于 SSL 的 Kafka 实例,以确保 Kafka 集群的安全性。

通过在 Amazon EC2 上运行 Kafka 集群,可以提供可靠且可扩展的基础设施平台,然而,该平台要求您监控、扩展和管理一系列服务器、维护软件堆栈以及管理集群的安全性,这无疑是沉重的管理负担。Amazon Kinesis Streams 提供专门构建的托管服务来帮助处理 AWS 上的流数据,从而解决了这一问题。它以可靠方式捕获和存储流数据,并将数据实时提供给流处理应用程序。您可以使用 Amazon Kinesis Streams 预置托管流数据接收系统,只需在 Amazon Kinesis 控制台中单击几下即可。Amazon Kinesis Streams 可自动跨三个可用区域复制您的数据,从而持久保留您的数据。您可以借助 API 以及与其他 AWS 服务(包括 AWS IAM、Amazon CloudWatch 和 AWS CloudTrail)的内置集成轻松扩展、保护和管理您的流。

您可以通过构建于 Amazon Kinesis Analytics 或其他处理框架(包括 Spark Streaming 和 Kinesis 客户端库 (KCL))上的处理应用程序来处理流中的数据。您可以使用经过处理的数据为实时控制面板提供支持、生成警报、实施动态定价,以及交付针对性较强的广告,等等。

要详细了解 Amazon Kinesis 和 Kafka,请单击此处

440x220_APN-Blog

这篇文章展示了如何在 EC2 上设置 Apache Kafka、如何使用 EMR 上的 Spark Streaming 处理流入 Apache Kafka 主题的数据以及如何使用 EMR 上的 Spark SQL 查询流数据。

阅读整篇文章 »

在此博客文章中,我们使用 Twitter 公共流以近乎实时的方式来分析共和党和民主党候选人的表现。我们将向您展示如何集成 Amazon Kinesis Firehose、AWS Lambda(Python 函数)和 Amazon Elasticsearch Service 以创建近乎实时的端到端发现平台。

阅读整篇文章 »

此博客文章将逐步指导您使用 AWS Lambda 和 Amazon Kinesis Firehose 以简单有效的方式将数据从 Amazon Kinesis Streams 保存到 Amazon S3 上。

在此处阅读整篇文章 »

要阅读更多有关流数据和大数据的博客文章,请访问 AWS 大数据博客 »


Amazon Kinesis 非常易于使用。只需登录 AWS 管理控制台,然后启动 Amazon Kinesis 即可。

 

开始使用 Amazon Kinesis