

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 教程：使用适用于 Apache Flink 的亚马逊托管服务分析实时股票数据
<a name="tutorial-stock-data"></a>

本教程的场景涉及将股票交易引入数据流中并编写对流执行计算的简单的[适用于 Apache Flink 的亚马逊托管服务](https://docs.aws.amazon.com/kinesisanalytics/latest/java/what-is.html)应用程序。您将了解如何将记录流发送到 Kinesis Data Streams 并实现近乎实时地使用和处理记录的应用程序。

借助适用于 Apache Flink 的亚马逊托管服务，您可以使用 Java 或 Scala 来处理和分析流数据。该服务能让您根据流式处理源编写并运行 Java 或 Scala 代码，以执行时间序列分析、为实时控制面板提供信息和创建实时指标。

您可以在适用于 Apache Flink 的托管服务中使用基于 [Apache Flink](https://flink.apache.org/) 的开源库构建 Flink 应用程序。Apache Flink 是处理数据流的常用框架和引擎。

**重要**  
在您创建两个数据流和一个应用程序后，您的账户会产生名义上的 Kinesis Data Streams 和 Apache Flink 托管服务使用费，因为它们不符合免费套餐的资格。 AWS 使用完此应用程序后，请删除您的 AWS 资源以停止产生费用。

代码不访问实际股票市场数据，而是模拟股票交易流。它通过使用随机股票交易生成器来实现这一点。如果您有权访问实时的股票交易流，则可能有兴趣从该流派生有用且及时的统计数据。例如，您可能希望执行滑动窗口分析，从而确定前 5 分钟内购买的最热门股票。或者，您可能希望在销售订单过大（即具有过多股份）时收到通知。可以扩展此系列代码以提供此类功能。

显示的示例使用美国西部（俄勒冈州）区域，但它们适用于[支持适用于 Apache Flink 的托管服务的任何AWS 区域](https://docs.aws.amazon.com/general/latest/gr/rande.html#ka_region)。

**Topics**
+ [完成练习的先决条件](#setting-up-prerequisites)
+ [设置 AWS 账户并创建管理员用户](setting-up.md)
+ [设置 AWS Command Line Interface (AWS CLI)](setup-awscli.md)
+ [创建并运行适用于 Apache Flink 的托管服务应用程序](get-started-exercise.md)

## 完成练习的先决条件
<a name="setting-up-prerequisites"></a>

要完成本指南中的步骤，您必须满足以下条件：
+ [Java 开发工具包](http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html) (JDK) 版本 8。设置 `JAVA_HOME` 环境变量，使其指向您的 JDK 安装位置。
+ 我们建议您使用开发环境（如 [Eclipse Java Neon](http://www.eclipse.org/downloads/packages/release/neon/3) 或 [IntelliJ Idea](https://www.jetbrains.com/idea/)）来开发和编译您的应用程序。
+ [Git 客户端](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git)。如果尚未安装 Git 客户端，请安装它。
+ [Apache Maven 编译器插件](https://maven.apache.org/plugins/maven-compiler-plugin/)。Maven 必须位于您的有效路径中。要测试您的 Apache Maven 安装，请输入以下内容：

  ```
  $ mvn -version
  ```

要开始，请转到[设置 AWS 账户并创建管理员用户](setting-up.md)。