

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

# Apache Flink 設定
<a name="reference-flink-settings.title"></a>

Managed Service for Apache Flink 是 Apache Flink 框架的實作。Managed Service for Apache Flink 使用本節所述的預設值。其中一些值可由 Managed Service for Apache Flink 應用程式在程式碼中設定，其他則無法變更。

使用本節中的連結，進一步了解 Apache flink 設定和可修改的設定。

**Topics**
+ [Apache Flink 組態](#apache-flink-configuration)
+ [狀態後端](#reference-defaults-state-backend)
+ [檢查點](#reference-defaults-checkpoint)
+ [儲存點](#reference-defaults-savepoint)
+ [堆積大小](#reference-defaults-heap)
+ [緩衝區消脹](#reference-defaults-buffer-debloating)
+ [可修改的 Flink 組態屬性](reference-modifiable-settings.md)
+ [程式設計 Flink 組態屬性](programmatic-configuration.md)
+ [檢視設定的 Flink 屬性](viewing-modifiable-settings.md)

## Apache Flink 組態
<a name="apache-flink-configuration"></a>

Managed Service for Apache Flink 提供預設的 Flink 組態，其中包含大多數屬性的 Apache Flink 建議值，少數一些基於常用應用程式設定檔。如需 Flink 組態的詳細資訊，請參閱[組態](https://nightlies.apache.org/flink/flink-docs-master/docs/deployment/config/)。服務提供的預設組態適用於大多數應用程式。不過，若要調整 Flink 組態屬性，以改善具有高平行處理、高記憶體和狀態用量的特定應用程式效能，或在 Apache Flink 中啟用新的偵錯功能，您可以透過請求支援案例來變更特定屬性。如需詳細資訊，請參閱 [AWS 支援中心](https://console.aws.amazon.com/support/home#/)。您可以使用 [Apache Flink 儀表板](https://docs.aws.amazon.com/managed-flink/latest/java/how-dashboard.html)檢查應用程式的目前組態。

## 狀態後端
<a name="reference-defaults-state-backend"></a>

Managed Service for Apache Flink 將暫時性資料儲存在狀態後端。Managed Service for Apache Flink 使用 **RocksDBStateBackend**。呼叫 `setStateBackend` 來設定不同的後端沒有任何效果。

我們在狀態後端啟用以下功能：
+ 增量狀態後端快照
+ 非同步狀態後端快照
+ 檢查點本機復原

如需狀態後端的詳細資訊，請參閱 Apache Flink 文件中的[狀態後端](https://nightlies.apache.org/flink/flink-docs-release-1.19/ops/state/state_backends.html)。

## 檢查點
<a name="reference-defaults-checkpoint"></a>

Managed Service for Apache Flink 使用具有下列值的預設檢查點組態。其中一些值可以使用 [CheckpointConfiguration](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_CheckpointConfiguration.html) 進行變更。您必須`CheckpointConfiguration.ConfigurationType`將 `CUSTOM` Managed Service for Apache Flink 設定為 ，才能使用修改後的檢查點值。


****  

| 設定 | 可以修改嗎？ | 方法 | 預設值 | 
| --- | --- | --- | --- | 
| CheckpointingEnabled | 可修改 | [建立應用程式](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_CreateApplication.html)<br />[更新應用程式](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_UpdateApplication.html)<br />[CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_KinesisAnalyticsV2.html) | True | 
| CheckpointInterval | 可修改 | [建立應用程式](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_CreateApplication.html)<br />[更新應用程式](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_UpdateApplication.html)<br />[CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_KinesisAnalyticsV2.html) | 60000 | 
| MinPauseBetweenCheckpoints | 可修改 | [建立應用程式](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_CreateApplication.html)<br />[更新應用程式](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_UpdateApplication.html)<br />[CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_KinesisAnalyticsV2.html) | 5000 | 
| 未對齊的檢查點 | 可修改 | [支援案例](https://console.aws.amazon.com/support/home#/) | False | 
| 並行檢查點的數量 | 不可修改 | N/A | 1 | 
| 檢查點模式 | 不可修改 | N/A | 恰好一次 | 
| 檢查點保留政策 | 不可修改 | N/A | 失敗時 | 
| 檢查點逾時 | 不可修改 | N/A | 60 分鐘 | 
| 保留的最大檢查點 | 不可修改 | N/A | 1 | 
| 檢查點和儲存點位置 | 不可修改 | N/A | 我們將持久的檢查點和儲存點資料儲存到服務擁有的 S3 儲存貯體。 | 

## 儲存點
<a name="reference-defaults-savepoint"></a>

依預設，從儲存點還原時，恢復操作會嘗試將儲存點的所有狀態映射回您要還原的程式。如果您捨棄某個運算子，依預設，從具有對應於遺失運算子之資料的儲存點還原將會失敗。您可以透過將應用程式 [FlinkRunConfiguration](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_FlinkRunConfiguration.html) 的 *AllowNonRestoredState* 參數設定為 `true`，以允許操作成功。這將允許恢復操作跳過無法對應至新程式的狀態。

如需詳細資訊，請參閱 [Apache Flink 文件](https://nightlies.apache.org/flink/flink-docs-release-1.15/)中的[允許非還原的狀態](https://nightlies.apache.org/flink/flink-docs-release-1.15/ops/state/savepoints.html#allowing-non-restored-state)。

## 堆積大小
<a name="reference-defaults-heap"></a>

Managed Service for Apache Flink 會為每個 KPU 分配 3 GiB 的 JVM 堆積，並為原生程式碼配置保留 1 GiB。如需增加應用程式容量的相關資訊，請參閱[在 Managed Service for Apache Flink 中實作應用程式擴展](how-scaling.md)。

如需 JVM 堆積大小的詳細資訊，請參閱 [Apache Flink 文件](https://nightlies.apache.org/flink/flink-docs-release-1.15/)中的[組態](https://nightlies.apache.org/flink/flink-docs-release-1.15/ops/config.html)。

## 緩衝區消脹
<a name="reference-defaults-buffer-debloating"></a>

緩衝區消脹可以幫助應用程式處理高背壓。如果應用程式遇到檢查點/儲存點失敗，啟用此功能可能會很有用。要做到這一點，可請求[支援案例](https://console.aws.amazon.com/support/home#/)。

如需詳細資訊，請參閱 [Apache Flink 文件](https://nightlies.apache.org/flink/flink-docs-release-1.15/)中的[緩衝區消脹機制](https://nightlies.apache.org/flink/flink-docs-release-1.15/docs/deployment/memory/network_mem_tuning/#the-buffer-debloating-mechanism)。