适用于 Apache Flink 的托管服务:工作原理 - Managed Service for Apache Flink
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

Amazon Managed Service for Apache Flink 之前称为 Amazon Kinesis Data Analytics for Apache Flink。

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

适用于 Apache Flink 的托管服务:工作原理

适用于 Apache Flink 的托管服务是一项完全托管的亚马逊服务,允许您使用 Apache Flink 应用程序来处理流数据。首先,对 Apache Flink 应用程序进行编程,然后创建适用于 Apache Flink 的托管服务应用程序。

编程你的 Apache Flink 应用程序

Apache Flink 应用程序是使用 Apache Flink 框架创建的 Java 或 Scala 应用程序。您可以在本地创作和构建 Apache Flink 应用程序。

应用程序主要使用DataStream API表API。其他 Apache Flink 也APIs可供你使用,但它们在构建流媒体应用程序时不太常用。

两者的特点APIs如下:

DataStream API

Apache Flink DataStream API 编程模型基于两个组件:

  • 数据流:连续数据记录流的结构化表示形式。

  • 转换操作符:将一个或多个数据流作为输入,并生成一个或多个数据流以作为输出。

使用创建的应用程序 DataStream API执行以下操作:

  • 从数据源(例如 Kinesis 直播或 Amazon MSK 主题)读取数据。

  • 对数据进行转换,例如筛选、聚合或扩充。

  • 将转换后的数据写入数据接收器。

使用 Java 或 Scala 的应用程序 DataStream API可以用 Java 或 Scala 编写,并且可以从 Kinesis 数据流、A MSK mazon 主题或自定义源中读取。

您的应用程序使用连接器处理数据。Apache Flink 使用以下连接器类型:

  • 来源:用于读取外部数据的连接器。

  • 接收器:用于写入外部位置的连接器。

  • 运算符:用于处理应用程序内数据的连接器。

典型的应用程序包含至少一个具有源的数据流、一个具有一个或多个操作符的数据流以及至少一个数据接收器。

有关使用的更多信息 DataStream API,请参阅查看 DataStream API组件

桌子 API

Apache Flink Table API 编程模型基于以下组件:

  • 表环境:用于创建和托管一个或多个表的基础数据的接口。

  • 表:提供对SQL表格或视图的访问权限的对象。

  • 表来源:用于从外部来源(例如 Amazon MSK 主题)读取数据。

  • 表函数:用于转换数据的SQL查询或API调用。

  • 表接收器:用于将数据写入 Amazon S3 桶等外部位置。

使用该表创建的应用程序API执行以下操作:

  • 通过连接到 a Table Source来创建TableEnvironment

  • TableEnvironment使用SQL查询或表API函数在中创建表。

  • 使用 “表” 或 “表” 对表API运行查询 SQL

  • 使用表函数或SQL查询对查询结果进行转换。

  • 将查询或函数结果写入Table Sink.

使用该表的应用程序API可以用 Java 或 Scala 编写,并且可以使用API调用或查询来SQL查询数据。

有关使用该表的更多信息API,请参阅查看表API组件

为 Apache Flink 应用程序创建你的托管服务

适用于 Apache Flink 的托管 Amazon 服务是一项服务,它可以创建用于托管 Apache Flink 应用程序的环境,并为其提供以下设置:

您可以使用控制台或 Amazon CLI创建和运行应用程序的 Managed Service for Apache Flink。要开始创建 Managed Service for Apache Flink 应用程序,请参阅教程:开始使用适用于 Apache Flink 的托管服务 DataStream API中的