

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Paramètres d'Apache Flink
<a name="reference-flink-settings.title"></a>

Le service géré pour Apache Flink est une implémentation de l’environnement Apache Flink. Le service géré pour Apache Flink utilise les valeurs par défaut décrites dans cette section. Certaines de ces valeurs peuvent être définies par le service géré pour les applications Apache Flink dans le code, tandis que d'autres ne peuvent pas être modifiées.

Utilisez les liens de cette section pour en savoir plus sur les paramètres d'Apache Flink et sur ceux qui sont modifiables.

**Topics**
+ [Configuration d'Apache Flink](#apache-flink-configuration)
+ [Backend d'État](#reference-defaults-state-backend)
+ [Point de contrôle](#reference-defaults-checkpoint)
+ [Point de sauvegarde](#reference-defaults-savepoint)
+ [Tailles des tas](#reference-defaults-heap)
+ [Dégonflement de la mémoire tampon](#reference-defaults-buffer-debloating)
+ [Propriétés de configuration Flink modifiables](reference-modifiable-settings.md)
+ [Propriétés de configuration programmatique de Flink](programmatic-configuration.md)
+ [Afficher les propriétés Flink configurées](viewing-modifiable-settings.md)

## Configuration d'Apache Flink
<a name="apache-flink-configuration"></a>

Le service géré pour Apache Flink fournit une configuration Flink par défaut composée de valeurs recommandées par Apache Flink pour la plupart des propriétés et de quelques-unes basées sur des profils d’application courants. Pour plus d’informations sur la configuration de Flink, consultez [Configuration](https://nightlies.apache.org/flink/flink-docs-master/docs/deployment/config/). La configuration par défaut fournie par le service fonctionne pour la plupart des applications. Toutefois, pour modifier les propriétés de configuration de Flink afin d'améliorer les performances de certaines applications présentant un parallélisme élevé, une utilisation élevée de la mémoire et de l'état, ou pour activer de nouvelles fonctionnalités de débogage dans Apache Flink, vous pouvez modifier certaines propriétés en demandant un dossier d'assistance. Pour plus d'informations, consultez [Centre de support AWS](https://console.aws.amazon.com/support/home#/). Vous pouvez vérifier la configuration actuelle de votre application à l’aide du [tableau de bord Apache Flink](https://docs.aws.amazon.com/managed-flink/latest/java/how-dashboard.html).

## Backend d'État
<a name="reference-defaults-state-backend"></a>

Le service géré pour Apache Flink stocke les données transitoires dans un backend d’état. Le service géré pour Apache Flink utilise le **DBStatebackend Rocks**. L’appel `setStateBackend` pour définir un backend différent n’a aucun effet. 

Nous activons les fonctionnalités suivantes sur le backend d’état :
+ Instantanés du backend d’état incrémentiel
+ Instantanés du backend d’état asynchrone
+ Restauration locale des points de contrôle

Pour plus d'informations sur les backends d'état, consultez la section [Backends d'état](https://nightlies.apache.org/flink/flink-docs-release-1.19/ops/state/state_backends.html) dans la documentation d'Apache Flink.

## Point de contrôle
<a name="reference-defaults-checkpoint"></a>

Le service géré pour Apache Flink utilise une configuration de point de contrôle par défaut avec les valeurs suivantes. Certaines de ces valeurs peuvent être modifiées à l'aide de [CheckpointConfiguration](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_CheckpointConfiguration.html). Vous devez définir cette option `CheckpointConfiguration.ConfigurationType` `CUSTOM` pour que Managed Service for Apache Flink utilise des valeurs de point de contrôle modifiées.


****  

| Paramètre | Peut être modifié ? | Comment ? | Valeur par défaut | 
| --- | --- | --- | --- | 
| CheckpointingEnabled | Adaptabilité | [Créer une application](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_CreateApplication.html) [Mettre à jour une application](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_UpdateApplication.html) [CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_KinesisAnalyticsV2.html)  | True | 
| CheckpointInterval | Adaptabilité | [Créer une application](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_CreateApplication.html) [Mettre à jour une application](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_UpdateApplication.html) [CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_KinesisAnalyticsV2.html)  | 60000 | 
| MinPauseBetweenCheckpoints | Adaptabilité | [Créer une application](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_CreateApplication.html) [Mettre à jour une application](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_UpdateApplication.html) [CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_KinesisAnalyticsV2.html)  | 5000 | 
| Points de contrôle non alignés | Adaptabilité | [Cas de support](https://console.aws.amazon.com/support/home#/) | False | 
| Nombre de points de contrôle simultanés | Non modifiable | N/A | 1 | 
| Mode de point de contrôle | Non modifiable | N/A | Exactement une fois | 
| Politique de rétention des points de contrôle | Non modifiable | N/A | En échec | 
| Délai d’expiration du point de contrôle | Non modifiable | N/A | 60 minutes | 
| Nombre maximal de points de contrôle conservés | Non modifiable | N/A | 1 | 
| Emplacement du point de contrôle et du point de sauvegarde | Non modifiable | N/A | Nous stockons des données de point de contrôle et de point de sauvegarde durables dans un compartiment S3 appartenant au service. | 

## Point de sauvegarde
<a name="reference-defaults-savepoint"></a>

Par défaut, lors de la restauration à partir d’un point de sauvegarde, l’opération de reprise essaie de faire correspondre l’ensemble de l’état du point de sauvegarde au programme avec lequel vous effectuez la restauration. Si vous supprimez un opérateur, par défaut, la restauration à partir d’un point de sauvegarde contenant des données correspondant à l’opérateur manquant échouera. Vous pouvez autoriser le succès de l'opération en réglant le *AllowNonRestoredState*paramètre de l'application [FlinkRunConfiguration](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_FlinkRunConfiguration.html)sur`true`. Cela permettra à l’opération de reprise d’ignorer l’état qui ne peut pas être mis en correspondance avec le nouveau programme.

Pour plus d’informations, consultez [Allowing Non-Restored State](https://nightlies.apache.org/flink/flink-docs-release-1.15/ops/state/savepoints.html#allowing-non-restored-state) dans la [documentation Apache Flink](https://nightlies.apache.org/flink/flink-docs-release-1.15/).

## Tailles des tas
<a name="reference-defaults-heap"></a>

Le service géré pour Apache Flink alloue 3 Gio de mémoire JVM à chaque KPU et réserve 1 Gio pour les allocations de code natif. Pour obtenir des informations sur l’augmentation de la capacité de votre application, consultez [Implémenter le dimensionnement des applications dans le service géré pour Apache Flink](how-scaling.md). 

Pour plus d’informations sur les tailles de tas JVM, consultez [Configuration](https://nightlies.apache.org/flink/flink-docs-release-1.15/ops/config.html) dans la [documentation Apache Flink](https://nightlies.apache.org/flink/flink-docs-release-1.15/).

## Dégonflement de la mémoire tampon
<a name="reference-defaults-buffer-debloating"></a>

Le dégonflement de la mémoire tampon peut aider les applications soumises à une contre-pression élevée. Si les points de contrôle ou de sauvegarde de votre application échouent, il peut être utile d’activer cette fonctionnalité. Pour ce faire, demandez un [dossier de support](https://console.aws.amazon.com/support/home#/). 

Pour plus d’informations, consultez [The Buffer Debloating Mechanism](https://nightlies.apache.org/flink/flink-docs-release-1.15/docs/deployment/memory/network_mem_tuning/#the-buffer-debloating-mechanism) dans la [documentation Apache Flink](https://nightlies.apache.org/flink/flink-docs-release-1.15/).

# Propriétés de configuration Flink modifiables
<a name="reference-modifiable-settings"></a>

Vous trouverez ci-dessous les paramètres de configuration de Flink que vous pouvez modifier à l'aide d'un [dossier de support](https://console.aws.amazon.com/support/home#/). Vous pouvez modifier plusieurs propriétés à la fois et pour plusieurs applications en même temps en spécifiant le préfixe de l’application. S'il existe d'autres propriétés de configuration de Flink que vous souhaitez modifier en dehors de cette liste, spécifiez la propriété exacte dans votre cas. 

## Stratégie de redémarrage
<a name="reference-modifiable-settings-fault-tolerance"></a>

À partir de Flink 1.19 et versions ultérieures, nous utilisons la stratégie de `exponential-delay` redémarrage par défaut. Toutes les versions précédentes utilisent la stratégie de `fixed-delay` redémarrage par défaut.

`restart-strategy:`

`restart-strategy.fixed-delay.delay:`

`restart-strategy.exponential-delay.backoff-muliplier:`

`restart-strategy.exponential-delay.initial-backoff:`

`restart-strategy.exponential-delay.jitter-factor:`

`restart-strategy.exponential-delay.reset-backoff-threshold:`

## Points de contrôle et backends d'État
<a name="reference-modifiable-settings-checkpoints-state-backends"></a>

`state.backend.type:`

`state.backend.fs.memory-threshold:`

`state.backend.incremental:`

## Point de contrôle
<a name="reference-modifiable-settings-checkpointing"></a>

`execution.checkpointing.unaligned:`

`execution.checkpointing.interval-during-backlog:`

## Métriques natives de RockSDB
<a name="reference-modifiable-settings-rocksdb"></a>

Les métriques natives de RockSDB ne sont pas expédiées à. CloudWatch Une fois activées, ces métriques sont accessibles à partir du tableau de bord Flink ou de l’API REST de Flink avec des outils personnalisés.

Le service géré pour Apache Flink permet aux clients d'accéder à la dernière [API REST](https://nightlies.apache.org/flink/flink-docs-release-1.18/docs/ops/rest_api/) de Flink (ou à la version prise en charge que vous utilisez) en mode lecture seule à l'aide de l'API. [CreateApplicationPresignedUrl](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_CreateApplicationPresignedUrl.html) Cette API est utilisée par le tableau de bord de Flink, mais elle peut également être utilisée par des outils de surveillance personnalisés. 

`state.backend.rocksdb.metrics.actual-delayed-write-rate:`

`state.backend.rocksdb.metrics.background-errors:`

`state.backend.rocksdb.metrics.block-cache-capacity:`

`state.backend.rocksdb.metrics.block-cache-pinned-usage:`

`state.backend.rocksdb.metrics.block-cache-usage:`

`state.backend.rocksdb.metrics.column-family-as-variable:`

`state.backend.rocksdb.metrics.compaction-pending:`

`state.backend.rocksdb.metrics.cur-size-active-mem-table:`

`state.backend.rocksdb.metrics.cur-size-all-mem-tables:`

`state.backend.rocksdb.metrics.estimate-live-data-size:`

`state.backend.rocksdb.metrics.estimate-num-keys:`

`state.backend.rocksdb.metrics.estimate-pending-compaction-bytes:`

`state.backend.rocksdb.metrics.estimate-table-readers-mem:`

`state.backend.rocksdb.metrics.is-write-stopped:`

`state.backend.rocksdb.metrics.mem-table-flush-pending:`

`state.backend.rocksdb.metrics.num-deletes-active-mem-table:`

`state.backend.rocksdb.metrics.num-deletes-imm-mem-tables:`

`state.backend.rocksdb.metrics.num-entries-active-mem-table:`

`state.backend.rocksdb.metrics.num-entries-imm-mem-tables:`

`state.backend.rocksdb.metrics.num-immutable-mem-table:`

`state.backend.rocksdb.metrics.num-live-versions:`

`state.backend.rocksdb.metrics.num-running-compactions:`

`state.backend.rocksdb.metrics.num-running-flushes:`

`state.backend.rocksdb.metrics.num-snapshots:`

`state.backend.rocksdb.metrics.size-all-mem-tables:`

## Options de RockSDB
<a name="reference-modifiable-settings-rocksdb-options"></a>

`state.backend.rocksdb.compaction.style:`

`state.backend.rocksdb.memory.partitioned-index-filters:`

`state.backend.rocksdb.thread.num:`

## Options avancées de backends d'état
<a name="reference-modifiable-settings-advanced-state-backends-options"></a>

`state.storage.fs.memory-threshold:`

## TaskManager Options complètes
<a name="reference-modifiable-settings-full-task-manager-options"></a>

`task.cancellation.timeout:`

`taskmanager.jvm-exit-on-oom:`

`taskmanager.numberOfTaskSlots:`

`taskmanager.slot.timeout:`

`taskmanager.memory.network.fraction:`

`taskmanager.memory.network.max:`

`taskmanager.network.request-backoff.initial:`

`taskmanager.network.request-backoff.max:`

`taskmanager.network.memory.buffer-debloat.enabled:`

`taskmanager.network.memory.buffer-debloat.period:`

`taskmanager.network.memory.buffer-debloat.samples:`

`taskmanager.network.memory.buffer-debloat.threshold-percentages:`

## Configuration de mémoire
<a name="reference-modifiable-settings-memory-configuration"></a>

`taskmanager.memory.jvm-metaspace.size:`

`taskmanager.memory.jvm-overhead.fraction:`

`taskmanager.memory.jvm-overhead.max:`

`taskmanager.memory.managed.consumer-weights:`

`taskmanager.memory.managed.fraction:`

`taskmanager.memory.network.fraction:`

`taskmanager.memory.network.max:`

`taskmanager.memory.segment-size:`

`taskmanager.memory.task.off-heap.size:`

## RPC/Akka
<a name="reference-modifiable-settings-RPC-Akka"></a>

`akka.ask.timeout:`

`akka.client.timeout:`

`akka.framesize:`

`akka.lookup.timeout:`

`akka.tcp.timeout:`

## Client
<a name="reference-modifiable-settings-client"></a>

`client.timeout:`

## Options de cluster avancées
<a name="reference-modifiable-settings-advanced-cluster-options"></a>

`cluster.intercept-user-system-exit:`

`cluster.processes.halt-on-fatal-error:`

## Configurations du système de fichiers
<a name="reference-modifiable-settings-advanced-filesystem-configurations"></a>

`fs.s3.connection.maximum:`

`fs.s3a.connection.maximum:`

`fs.s3a.threads.max:`

`s3.upload.max.concurrent.uploads:`

## Options avancées de tolérance aux pannes
<a name="reference-modifiable-settings-advanced-fault-tolerance-options"></a>

`heartbeat.timeout:`

`jobmanager.execution.failover-strategy:`

## Configuration de mémoire
<a name="reference-modifiable-settings-memory-configuration"></a>

`jobmanager.memory.heap.size:`

## Métriques
<a name="reference-modifiable-settings-metrics"></a>

`metrics.latency.interval:`

## Options avancées pour le point de terminaison et le client REST
<a name="reference-modifiable-settings-rest"></a>

`rest.flamegraph.enabled:`

`rest.server.numThreads:`

## Options de sécurité SSL avancées
<a name="reference-modifiable-settings-ssl"></a>

`security.ssl.internal.handshake-timeout:`

## Options de planification avancées
<a name="reference-modifiable-settings-scheduling"></a>

`slot.request.timeout:`

## Options avancées pour l'interface utilisateur Web de Flink
<a name="reference-modifiable-settings-webui"></a>

`web.timeout:`

# Propriétés de configuration programmatique de Flink
<a name="programmatic-configuration"></a>

Vous trouverez ci-dessous les propriétés de configuration de Flink que vous pouvez modifier directement dans le code de votre application. À partir de MSF 2.2, une exception sera émise si vous essayez de modifier une propriété non répertoriée sur cette page dans le code de votre application.

**Note**  
Ces propriétés sont distinctes des paramètres modifiés via le dossier AWS Support. Pour les paramètres au niveau de l'infrastructure tels que TaskManager la mémoire, le backend d'état, le réglage de RockSDB et les stratégies de redémarrage, voir. [Propriétés de configuration Flink modifiables](reference-modifiable-settings.md)

## Configuration du pipeline
<a name="programmatic-configuration-pipeline"></a>

`execution.runtime-mode`

`pipeline.auto-generate-uids`

`pipeline.auto-watermark-interval`

`pipeline.cached-files`

`pipeline.classpaths`

`pipeline.closure-cleaner-level`

`pipeline.force-avro`

`pipeline.force-kryo`

`pipeline.generic-types`

`pipeline.global-job-parameters`

`pipeline.jars`

`pipeline.jobvertex-parallelism-overrides`

`pipeline.max-parallelism`

`pipeline.name`

`pipeline.object-reuse`

`pipeline.operator-chaining.chain-operators-with-different-max-parallelism`

`pipeline.operator-chaining.enabled`

`pipeline.serialization-config`

`pipeline.vertex-description-mode`

`pipeline.vertex-name-include-index-prefix`

`pipeline.watermark-alignment.allow-unaligned-source-splits`

## API Python
<a name="programmatic-configuration-python"></a>

`python.execution-mode`

`python.operator-chaining.enabled`

`python.job-options`

`python.internal.archives-key-map`

`python.internal.files-key-map`

`python.internal.requirements-file-key`

## Tableau API/SQL
<a name="programmatic-configuration-table-api"></a>

`table.exec.async-lookup.buffer-capacity`

`table.exec.async-lookup.key-ordered-enabled`

`table.exec.async-lookup.output-mode`

`table.exec.async-lookup.timeout`

`table.exec.async-ml-predict.max-concurrent-operations`

`table.exec.async-ml-predict.output-mode`

`table.exec.async-ml-predict.timeout`

`table.exec.async-scalar.max-concurrent-operations`

`table.exec.async-scalar.max-attempts`

`table.exec.async-scalar.retry-delay`

`table.exec.async-scalar.retry-strategy`

`table.exec.async-scalar.timeout`

`table.exec.async-state.enabled`

`table.exec.async-table.max-concurrent-operations`

`table.exec.async-table.max-retries`

`table.exec.async-table.retry-delay`

`table.exec.async-table.retry-strategy`

`table.exec.async-table.timeout`

`table.exec.async-vector-search.max-concurrent-operations`

`table.exec.async-vector-search.output-mode`

`table.exec.async-vector-search.timeout`

`table.exec.deduplicate.insert-update-after-sensitive-enabled`

`table.exec.deduplicate.mini-batch.compact-changes-enabled`

`table.exec.delta-join.cache-enabled`

`table.exec.disabled-operators`

`table.exec.iceberg.use-v2-sink`

`table.exec.interval-join.min-cleanup-interval`

`table.exec.legacy-cast-behaviour`

`table.exec.local-hash-agg.adaptive.distinct-value-rate-threshold`

`table.exec.local-hash-agg.adaptive.enabled`

`table.exec.local-hash-agg.adaptive.sampling-threshold`

`table.exec.mini-batch.allow-latency`

`table.exec.mini-batch.enabled`

`table.exec.mini-batch.size`

`table.exec.operator-fusion-codegen.enabled`

`table.exec.simplify-operator-name-enabled`

`table.exec.sink.keyed-shuffle`

`table.exec.sink.nested-constraint-enforcer`

`table.exec.sink.not-null-enforcer`

`table.exec.sink.rowtime-inserter`

`table.exec.sink.type-length-enforcer`

`table.exec.sink.upsert-materialize`

`table.exec.sink.upsert-materialize-strategy.adaptive.threshold.high`

`table.exec.sink.upsert-materialize-strategy.adaptive.threshold.low`

`table.exec.sink.upsert-materialize-strategy.type`

`table.exec.sort.async-merge-enabled`

`table.exec.sort.default-limit`

`table.exec.sort.max-num-file-handles`

`table.exec.source.cdc-events-duplicate`

`table.exec.source.idle-timeout`

`table.exec.spill-compression.block-size`

`table.exec.spill-compression.enabled`

`table.exec.state.ttl`

`table.exec.uid.format`

`table.exec.uid.generation`

`table.exec.unbounded-over.version`

`table.exec.window-agg.buffer-size-limit`

`table.optimizer.agg-phase-strategy`

`table.optimizer.adaptive-broadcast-join.strategy`

`table.optimizer.bushy-join-reorder-threshold`

`table.optimizer.delta-join.strategy`

`table.optimizer.distinct-agg.split.bucket-num`

`table.optimizer.distinct-agg.split.enabled`

`table.optimizer.dynamic-filtering.enabled`

`table.optimizer.incremental-agg-enabled`

`table.optimizer.join-reorder-enabled`

`table.optimizer.multi-join.enabled`

`table.optimizer.multiple-input-enabled`

`table.optimizer.non-deterministic-update.strategy`

`table.optimizer.reuse-optimize-block-with-digest-enabled`

`table.optimizer.reuse-sink-enabled`

`table.optimizer.reuse-source-enabled`

`table.optimizer.reuse-sub-plan-enabled`

`table.optimizer.runtime-filter.enabled`

`table.optimizer.skewed-join-optimization.skewed-factor`

`table.optimizer.skewed-join-optimization.skewed-threshold`

`table.optimizer.skewed-join-optimization.strategy`

`table.optimizer.source.report-statistics-enabled`

`table.optimizer.union-all-as-breakpoint-enabled`

`table.builtin-catalog-name`

`table.builtin-database-name`

`table.catalog-modification.listeners`

`table.column-expansion-strategy`

`table.display.max-column-width`

`table.dml-sync`

`table.dynamic-table-options.enabled`

`table.generated-code.max-length`

`table.legacy-nested-row-nullability`

`table.local-time-zone`

`table.plan.compile.catalog-objects`

`table.plan.force-recompile`

`table.plan.restore.catalog-objects`

`table.rtas-ctas.atomicity-enabled`

`table.sql-dialect`

# Afficher les propriétés Flink configurées
<a name="viewing-modifiable-settings"></a>

Vous pouvez consulter les propriétés Apache Flink que vous avez configurées vous-même ou dont vous avez demandé la modification par le biais d’un [dossier de support](https://support.console.aws.amazon.com/support/home#/) via le tableau de bord Apache Flink et en suivant ces étapes :

1. Accédez au tableau de bord Flink

1. Choisissez **Gestionnaire de tâches** dans le volet de navigation de gauche.

1. Choisissez **Configuration** pour afficher la liste des propriétés de Flink.