对流数据进行交互式分析 - Managed Service for Apache Flink

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

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

对流数据进行交互式分析

您可以使用由 Apache Zeppelin 提供支持的无服务器笔记本与您的流媒体数据进行交互。您的笔记本可以有多个笔记,每个笔记可以有一个或多个段落供您编写代码。

以下示例SQL查询显示了如何从数据源检索数据:

%flink.ssql(type=update) select * from stock;

有关 Flink 直播SQL查询的更多示例,请参阅适用于 Apache Flink 的托管服务中的 Studio 笔记本的示例和教程以下内容和 Apache Flink 文档中的查询

您可以在 Studio 笔记本中使用 Flink SQL 查询来查询流媒体数据。您也可以使用 Python(表API)和 Scala(表和数据流APIs)来编写程序,以交互方式查询您的流数据。您可以查看查询或程序的结果,在几秒钟内对其进行更新,然后重新运行它们以查看更新的结果。

Flink 解释器

您可以使用解释器指定 Managed Service for Apache Flink使用哪种语言来运行您的应用程序。以下解释器与 Managed Service for Apache Flink

名称 描述
%flink FlinkInterpreter 创建 ExecutionEnvironment/StreamExecutionEnvironment/BatchTableEnvironment/StreamTableEnvironment 并提供一个 Scala 环境
%flink.pyflink PyFlinkInterpreter 提供一个 python 环境
%flink.ipyflink IPyFlinkInterpreter 提供一个 ipython 环境
%flink.ssql FlinkStreamSqlInterpreter 提供一个流 sql 环境
%flink.bsql FlinkBatchSqlInterpreter 提供批处理 sql 环境

有关 Flink 解释器的更多信息,请参阅 Apache Zeppelin 的 Flink 解释器。

如果您使用%flink.pyflink%flink.ipyflink作为解释器,则需要使用在ZeppelinContext笔记本中可视化结果。

有关更 PyFlink 具体的示例,请参阅使用适用于 Apache Flink Studio 和 Python 的托管服务以交互方式查询您的数据流

Apache Flink 表环境变量

Apache Zeppelin 提供使用环境变量访问表环境资源的权限。

您可以使用以下变量访问 Scala 表环境资源:

Variable 资源
senvStreamExecutionEnvironment
stenvStreamTableEnvironment for blink planner

您可以使用以下变量访问 Python 表环境资源:

Variable 资源
s_envStreamExecutionEnvironment
st_envStreamTableEnvironment for blink planner

有关使用表环境的更多信息,请参阅 Apache Flink API 文档中的概念和常用信息。