

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Amazon Managed Service for Apache Flink 1.15
<a name="flink-1-15-2"></a>

 Managed Service for Apache Flink 支援 Apache 1.15.2 中的下列新功能：


****  

| 功能 | Description | Apache FLIP 參考  | 
| --- | --- | --- | 
| 非同步接收器  | 建置非同步目的地的 AWS 貢獻架構，可讓開發人員建置自訂 AWS 連接器，前次工作不到一半。如需詳細資訊，請參閱[通用非同步基本接收器](https://flink.apache.org/2022/05/06/async-sink-base.html)。 | [FLIP-171：非同步接收器](https://cwiki.apache.org/confluence/display/FLINK/FLIP-171%3A+Async+Sink)。 | 
| Kinesis Data Firehose 接收器  | AWS 已使用非同步架構貢獻新的 Amazon Kinesis Firehose Sink。 | [Amazon Kinesis Data Firehose 接收器](https://nightlies.apache.org/flink/flink-docs-release-1.15//docs/connectors/datastream/firehose/)。 | 
| 使用儲存點停止  | 「使用儲存點停止」可確保乾淨利落的停止操作，最重要的是為依賴它們的客戶提供了僅支援一次的語義。 | [FLIP-34：使用儲存點終止/暫停作業](https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=103090212)。 | 
| Scala 解耦  | 使用者現在可以利用任何 Scala 版本的 Java API，包括 Scala 3。客戶需要將所選擇的 Scala 標準程式庫綁定在他們的 Scala 應用程式中。 | [FLIP-28：將移除 flink-table 的 Scala 相依性作為長期目標](https://cwiki.apache.org/confluence/display/FLINK/FLIP-28%3A+Long-term+goal+of+making+flink-table+Scala-free)。 | 
| Scala | 請參閱上面的 Scala 解耦  | [FLIP-28：將移除 flink-table 的 Scala 相依性作為長期目標](https://cwiki.apache.org/confluence/display/FLINK/FLIP-28%3A+Long-term+goal+of+making+flink-table+Scala-free)。 | 
| 統一的連接器指標 | Flink 針對作業、任務和運算子擁有[已定義的標準指標](https://nightlies.apache.org/flink/flink-docs-release-1.15//docs/ops/metrics/)。Managed Service for Apache Flink 將繼續支援接收器和來源指標，並在 1.15 版中為可用性指標同時引入了 numRestarts 與 fullRestarts。 | [FLIP-33：將連接器指標標準化](https://cwiki.apache.org/confluence/display/FLINK/FLIP-33%3A+Standardize+Connector+Metrics)和 [FLIP-179：公開標準化的運算子指標](https://cwiki.apache.org/confluence/display/FLINK/FLIP-179%3A+Expose+Standardized+Operator+Metrics)。 | 
| 檢查點已完成的任務  | 此功能在 Flink 1.15 中預設為啟用，即使作業圖表的某些部分已完成處理所有資料 (如果包含綁定的 (批次) 來源，可能會發生此情況)，仍可以繼續執行檢查點。 | [FLIP-147：在任務完成後支援檢查點](https://cwiki.apache.org/confluence/display/FLINK/FLIP-147%3A+Support+Checkpoints+After+Tasks+Finished)。 | 

## 使用 Apache Flink 1.15 的 Amazon Managed Service for Apache Flink 中的變更
<a name="flink-1-15-2-changes"></a>

**Studio 筆記本**

Managed Service for Apache Flink Studio 現支援 Apache Flink 1.15。Managed Service for Apache Flink Studio 利用 Apache Zeppelin 筆記本提供單一介面開發體驗，用於開發、程式碼偵錯和執行 Apache Flink 串流處理應用程式。您可以在 [使用 Studio 筆記本搭配 Managed Service for Apache Flink](how-notebook.md) 中進一步了解 Managed Service for Apache Flink Studio 以及如何開始使用。

**EFO 連接器**

升級至 Managed Service for Apache Flink 1.15 版時，確保使用的是最新的 EFO 連接器，也就是任何 1.15.3 版或更新版本。如需原因的詳細資訊，請參閱 [FLINK-29324](https://issues.apache.org/jira/browse/FLINK-29324 )。

**Scala 解耦**

從 Flink 1.15.2 開始，您需要將您選擇的 Scala 標準程式庫綁定到 Scala 應用程式中。

**Kinesis Data Firehose 接收器**

升級至 Managed Service for Apache Flink 1.15 版時，確保使用的是最新的 [Amazon Kinesis Data Firehose 接收器](https://nightlies.apache.org/flink/flink-docs-release-1.15//docs/connectors/datastream/firehose/)。

**Kafka 連接器**

升級至 Amazon Managed Service for Apache Flink 1.15 版時，確保使用的是最新的 Kafka 連接器 API。Apache Flink 已不推薦使用 [FlinkKafkaConsumer](https://nightlies.apache.org/flink/flink-docs-master/docs/connectors/datastream/kafka/#kafka-consumer) 和 [FlinkKafkaProducer](https://nightlies.apache.org/flink/flink-docs-master/docs/connectors/datastream/kafka/#kafka-producer)。對於 Flink 1.15，這些用於 Kafka 接收器的 API 無法遞交給 Kafka。確保您正在使用 [KafkaSource](https://nightlies.apache.org/flink/flink-docs-master/docs/connectors/datastream/kafka/#kafka-source) 和 [KafkaSink](https://nightlies.apache.org/flink/flink-docs-master/docs/connectors/datastream/kafka/#kafka-sink)。

## 元件
<a name="flink-1-15-2-components"></a>


****  

| 元件 | 版本 | 
| --- | --- | 
| Java  | 11 (建議使用) | 
| Scala | 2.12 | 
| Managed Service for Apache Flink 執行期 (aws-kinesisanalytics-runtime) | 1.2.0 | 
| [AWS Kinesis 連接器 (flink-connector-kinesis)](https://mvnrepository.com/artifact/org.apache.flink/flink-connector-kinesis/1.15.4) | 1.15.4 | 
| [Apache Beam (僅限於 Beam 應用程式)](https://aws.amazon.com/developer/language/python/) | 2.33.0，帶有 Jackson 2.12.2 版 | 

## 已知問題
<a name="flink-1-15-known-issues"></a>

**代理程式重新啟動後，Kafka 遞交檢查點會重複失敗**

Flink 1.15 版中的 Apache Kafka 連接器存在已知的開放原始碼 Apache Flink 問題，因為 Kafka 用戶端 2.8.1 中的重大開放原始碼 Kafka 用戶端錯誤。如需詳細資訊，請參閱在[代理程式重新啟動後，Kafka 遞交檢查點會重複失敗，](https://issues.apache.org/jira/browse/FLINK-28060)且在 [ commitOffsetAsync 例外狀況之後，KafkaConsumer 無法復原與群組協調器的連線](https://issues.apache.org/jira/browse/KAFKA-13840)。

為了避免此問題，建議您在 Amazon Managed Service for Apache Flink 中使用 Apache Flink 1.18 或更新版本。