You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/layouts/shortcodes/generated/execution_config_configuration.html
+18Lines changed: 18 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -272,6 +272,24 @@
272
272
<td><p>Enum</p></td>
273
273
<td>Because of the disorder of ChangeLog data caused by Shuffle in distributed system, the data received by Sink may not be the order of global upsert. So add upsert materialize operator before upsert sink. It receives the upstream changelog records and generate an upsert view for the downstream.<br/>By default, the materialize operator will be added when a distributed disorder occurs on unique keys. You can also choose no materialization(NONE) or force materialization(FORCE).<br/><br/>Possible values:<ul><li>"NONE"</li><li>"AUTO"</li><li>"FORCE"</li></ul></td>
<td>When using strategy=ADAPTIVE, defines the number of entries per key when the implementation is changed from VALUE to MAP. If not specified, Flink uses state-backend specific defaults (400 for hashmap state backend and 50 for RocksDB and the rest).<br/></td>
<td>When using strategy=ADAPTIVE, defines the number of entries per key when the implementation is changed from MAP to VALUE. If not specified, Flink uses state-backend specific defaults (300 for hashmap state backend and 40 for RocksDB and the rest).<br/></td>
<td>Which strategy of SinkUpsertMaterializer to use. Supported strategies:<br/>LEGACY: Simple implementation based on ValueState<List> (the original implementation).<br/>MAP: SequencedMultiSetState implementation based on a combination of several MapState maintaining ordering and fast lookup properties.<br/>VALUE: Similar to LEGACY, but compatible with MAP and therefore allows to switch to ADAPTIVE.<br/>ADAPTIVE: Alternate between MAP and VALUE depending on the number of entries for the given key starting with VALUE and switching to MAP upon reaching threshold.high value (and back to VALUE, when reaching low).<br/><br/>Possible values:<ul><li>"LEGACY"</li><li>"MAP"</li><li>"VALUE"</li><li>"ADAPTIVE"</li></ul></td>
Copy file name to clipboardExpand all lines: flink-table/flink-table-api-java/src/main/java/org/apache/flink/table/api/config/ExecutionConfigOptions.java
+105Lines changed: 105 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -159,6 +159,74 @@ public class ExecutionConfigOptions {
"Which strategy of SinkUpsertMaterializer to use. Supported strategies:")
212
+
.linebreak()
213
+
.text(
214
+
SinkUpsertMaterializeStrategy.LEGACY
215
+
+ ": Simple implementation based on ValueState<List> (the original implementation).")
216
+
.linebreak()
217
+
.text(
218
+
SinkUpsertMaterializeStrategy.MAP
219
+
+ ": SequencedMultiSetState implementation based on a combination of several MapState maintaining ordering and fast lookup properties.")
220
+
.linebreak()
221
+
.text(
222
+
SinkUpsertMaterializeStrategy.VALUE
223
+
+ ": Similar to LEGACY, but compatible with MAP and therefore allows to switch to ADAPTIVE.")
224
+
.linebreak()
225
+
.text(
226
+
SinkUpsertMaterializeStrategy.ADAPTIVE
227
+
+ ": Alternate between MAP and VALUE depending on the number of entries for the given key starting with VALUE and switching to MAP upon reaching threshold.high value (and back to VALUE, when reaching low).")
0 commit comments