应用程序资 - Amazon Kinesis Data Analytics
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

应用程序资

本节介绍应用程序使用的系统资源。了解 Kinesis Data Analytics 如何配置和使用资源将有助于您设计、创建和维护高性能稳定的 Kinesis Data Analytics 应用程序。

Kinesis Data Analytics 应用程序

Kinesis Data AnalyticsAmazon为托管 Apache Flink 应用程序创建一个环境的服务。Kinesis Data Analytics 服务使用名为的单元提供资源Kinesis 处理单元 (KPU).

一个 KPU 代表以下系统资源:

  • 一个 CPU 核心

  • 4 GB 内存,其中 1 GB 是本机内存,三 GB 是堆内存

  • 50 GB 的磁盘空间

KPU 以不同的执行单元运行应用程序任务子任务. 您可以将子任务视为线程。

可供应用程序使用的 KPU 数量等于应用程序Parallelism设置,除以应用程序的ParallelismPerKPU设置。

有关应用程序并行度的更多信息,请参阅扩展.

Apache Flink 环境使用名为的单元为应用程序分配资源任务槽. 当 Kinesis Data Analytics 为您的应用程序分配资源时,它会将一个或多个 Apache Flink 任务插槽分配给单个 KPU。分配给单个 KPU 的插槽数量等于你的应用程序ParallelismPerKPU设置。有关任务槽的更多信息,请参阅作业计划中的Apache Flink 文档.

您可以设置操作符可以使用的最大子任务数。这个值被称为操作符并行度. 默认情况下,应用程序中每个运算符的并行度等于应用程序的并行度。这意味着,默认情况下,如果需要,应用程序中的每个操作员都可以使用应用程序中的所有可用子任务。

您可以使用以设置应用程序中操作符的并行度setParallelism方法。使用此方法,您可以控制每个操作员一次可以使用的子任务数量。

有关操作符链的更多信息,请参阅任务链接和资源组中的Apache Flink 文档.

通常,每个运算符都使用单独的子任务来执行,但是如果多个运算符始终按顺序执行,则运行时可以将它们全部分配给同一个任务。此过程称为串联操作符.

如果几个顺序运算符都在同一个数据上运行,则可以将它们链接到一个任务中。以下是实现此所需的一些标准:

  • 运营商进行一对一的简单转发。

  • 运算符都具有相同的运算符并行度。

当您的应用程序将操作员链接到单个子任务中时,它会节省系统资源,因为该服务不需要执行网络操作和为每个操作员分配子任务。要确定应用程序是否使用操作员链接,请查看 Kinesis Data Analytics 控制台中的作业图。应用程序中的每个顶点代表一个或多个操作符。该图显示了作为单个顶点链接的运算符。