

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

# 开始使用适用于 Apache Flink 的亚马逊托管服务 (DataStream API)
<a name="getting-started"></a>

本节向您介绍适用于 Apache Flink 的托管服务的基本概念，以及使用 API 在 Java 中实现应用程序。 DataStream 它介绍了可用于创建和测试应用程序的选项。它还提供了相应的说明以安装所需的工具，以完成本指南中的教程和创建第一个应用程序。

**Topics**
+ [审核 Managed Service for Apache Flink 应用程序组件](#getting-started-components)
+ [满足完成练习的先决条件](#setting-up-prerequisites)
+ [设置 Amazon 账户并创建管理员用户](setting-up.md)
+ [设置 Amazon Command Line Interface (Amazon CLI)](setup-awscli.md)
+ [创建并运行适用于 Apache Flink 的托管服务应用程序](get-started-exercise.md)
+ [清理 Amazon 资源](getting-started-cleanup.md)
+ [探索其他资源](getting-started-next-steps.md)

## 审核 Managed Service for Apache Flink 应用程序组件
<a name="getting-started-components"></a>

**注意**  
适用于 Apache Flink 的亚马逊托管服务 Flink 支持所有 Apache Flink，可能还支持所有 J APIs VM 语言。有关更多信息，请参阅 [Flink 的。 APIs](https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/concepts/overview/#flinks-apis)  
根据您选择的 API，应用程序的结构和实施会略有不同。本入门教程介绍如何在 Java 中使用 DataStream API 实现应用程序。

为处理数据，Managed Service for Apache Flink 应用程序使用 Java 应用程序，其使用 Apache Flink 运行时系统处理输入和生成输出。

典型的 Managed Service for Apache Flink 应用程序包含以下组件：
+ **运行时属性：**您可以使用*运行时属性*将配置参数传递给应用程序，以便在不修改和重新发布代码的情况下对其进行更改。
+ **源：**应用程序使用来自一个或多个*源*的数据。源使用[连接器](https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/connectors/table/overview/)从外部系统（例如 Kinesis 数据流或 Kafka 存储桶）读取数据。有关更多信息，请参阅 [添加流数据源](how-sources.md)。
+ **运算符：**应用程序使用一个或多个*运算符* 以处理数据。运算符可以转换、丰富或聚合数据。有关更多信息，请参阅 [运算符](how-operators.md)。
+ **接收器：**应用程序通过*接收器*将数据发送到外部源。接收器使用[连接器](https://nightlies.apache.org/flink/flink-docs-release-1.20/docs/connectors/table/overview/)将数据发送到 Kinesis 数据流、Kifka 主题、Amazon S3 或关系数据库。也可以使用特殊的连接器，仅出于开发目的打印输出。有关更多信息，请参阅 [使用接收器写入数据](how-sinks.md)。

您的应用程序需要一些*外部依赖项*，例如应用程序使用的 Flink 连接器或潜在的 Java 库。要在 Amazon Managed Service for Apache Flink 中运行，必须将应用程序与依赖项一起打包到 *fat-jar* 中，然后上传到 Amazon S3 存储桶。然后，您创建一个 Managed Service for Apache Flink 应用程序。您可以传递代码包的位置以及任何其他运行时配置参数。

本教程演示如何使用 Apache Maven 打包应用程序，以及如何在您选择的 IDE 中本地运行应用程序。

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

要完成本指南中的步骤，您必须满足以下条件：
+ [Git 客户端](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git)。如果尚未安装 Git 客户端，请安装它。
+ [Java 开发套件 (JDK) 版本 11](https://www.oracle.com/java/technologies/downloads/#java11)。安装 Java JDK 11 并设置 `JAVA_HOME` 环境变量，使其指向您的 JDK 安装位置。如果没有 JDK 11，可以使用 [Amazon Coretto 11](https://docs.amazonaws.cn/corretto/latest/corretto-11-ug/what-is-corretto-11.html) 或选择的任何其他标准 JDK。
  + 要验证是否已正确安装 SDK，请运行以下命令。如果使用 Amazon Corretto 以外的 JDK，则输出会有所不同。确保版本为 11.x。

    ```
    $ java --version
    
    openjdk 11.0.23 2024-04-16 LTS
    OpenJDK Runtime Environment Corretto-11.0.23.9.1 (build 11.0.23+9-LTS)
    OpenJDK 64-Bit Server VM Corretto-11.0.23.9.1 (build 11.0.23+9-LTS, mixed mode)
    ```
+ [Apache Maven](https://maven.apache.org/)。如果尚未安装 Apache Maven，请安装它。要了解如何安装该工具，请参阅[安装 Apache Maven](https://maven.apache.org/install.html)。
  + 要测试您的 Apache Maven 安装，请输入以下内容：

  ```
  $ mvn -version
  ```
+ 用于本地开发的 IDE。我们建议您使用开发环境（如 [Eclipse Java Neon](https://www.eclipse.org/downloads/packages/release/neon/3) 或 [IntelliJ IDEA](https://www.jetbrains.com/idea/)）来开发和编译您的应用程序。
  + 要测试您的 Apache Maven 安装，请输入以下内容：

  ```
  $ mvn -version
  ```

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