选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

表 API 连接器

聚焦模式
表 API 连接器 - Managed Service for Apache Flink

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

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

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

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

在 Apache Flink 编程模型中,连接器是应用程序用来从外部源(例如其他 AWS 服务)读取或写入数据的组件。

使用 Apache Flink Table API,您可以使用以下类型的连接器:

  • 表 API 来源:您可以使用表 API 源连接器通过 API 调TableEnvironment用或 SQL 查询在中创建表。

  • 表 API 接收器:您可以使用 SQL 命令将表数据写入外部来源,例如 Amazon MSK 主题或 Amazon S3 存储桶。

表 API 来源

您可以从数据流创建表源。以下代码根据Amazon MSK 主题创建表:

//create the table final FlinkKafkaConsumer<StockRecord> consumer = new FlinkKafkaConsumer<StockRecord>(kafkaTopic, new KafkaEventDeserializationSchema(), kafkaProperties); consumer.setStartFromEarliest(); //Obtain stream DataStream<StockRecord> events = env.addSource(consumer); Table table = streamTableEnvironment.fromDataStream(events);

有关表源的更多信息,请参阅 Apache Flink 文档中的表和 SQL 连接器

表 API 接收器

要将表数据写入接收器,可以在 SQL 中创建接收器,然后在对象上运行基于 SQL 的StreamTableEnvironment接收器。

以下代码示例演示了如何将表数据写入 Amazon S3 接收器:

final String s3Sink = "CREATE TABLE sink_table (" + "event_time TIMESTAMP," + "ticker STRING," + "price DOUBLE," + "dt STRING," + "hr STRING" + ")" + " PARTITIONED BY (ticker,dt,hr)" + " WITH" + "(" + " 'connector' = 'filesystem'," + " 'path' = '" + s3Path + "'," + " 'format' = 'json'" + ") "; //send to s3 streamTableEnvironment.executeSql(s3Sink); filteredTable.executeInsert("sink_table");

您可以使用format参数来控制 Managed Service for Apache Flink 使用何种格式将输出写入接收器。有关格式的信息,请参阅 Apache Flink 文档中支持的连接器

用户定义的源和汇

您可以使用现有的 Apache Kafka 连接器向其他 AWS 服务(例如Amazon MSK 和Amazon S3)发送数据。为了与其他数据源和目标进行交互,您可以定义自己的源和接收器。有关更多信息,请参阅 Apache Flink 文档中的用户定义源和接收器

本页内容

隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。