You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by GitBox <gi...@apache.org> on 2022/04/08 07:10:39 UTC

[GitHub] [flink] snailHumming opened a new pull request, #19401: [FLINK-25716][docs-zh] Translate "Streaming Concepts" page of "Applic…

snailHumming opened a new pull request, #19401:
URL: https://github.com/apache/flink/pull/19401

   …ation Development > Table API & SQL" to Chinese
   
   <!--
   *Thank you very much for contributing to Apache Flink - we are happy that you want to help us improve Flink. To help the community review your contribution in the best possible way, please go through the checklist below, which will get the contribution into a shape in which it can be best reviewed.*
   
   *Please understand that we do not do this to make contributions to Flink a hassle. In order to uphold a high standard of quality for code contributions, while at the same time managing a large number of contributions, we need contributors to prepare the contributions well, and give reviewers enough contextual information for the review. Please also understand that contributions that do not follow this guide will take longer to review and thus typically be picked up with lower priority by the community.*
   
   ## Contribution Checklist
   
     - Make sure that the pull request corresponds to a [JIRA issue](https://issues.apache.org/jira/projects/FLINK/issues). Exceptions are made for typos in JavaDoc or documentation files, which need no JIRA issue.
     
     - Name the pull request in the form "[FLINK-XXXX] [component] Title of the pull request", where *FLINK-XXXX* should be replaced by the actual issue number. Skip *component* if you are unsure about which is the best component.
     Typo fixes that have no associated JIRA issue should be named following this pattern: `[hotfix] [docs] Fix typo in event time introduction` or `[hotfix] [javadocs] Expand JavaDoc for PuncuatedWatermarkGenerator`.
   
     - Fill out the template below to describe the changes contributed by the pull request. That will give reviewers the context they need to do the review.
     
     - Make sure that the change passes the automated tests, i.e., `mvn clean verify` passes. You can set up Azure Pipelines CI to do that following [this guide](https://cwiki.apache.org/confluence/display/FLINK/Azure+Pipelines#AzurePipelines-Tutorial:SettingupAzurePipelinesforaforkoftheFlinkrepository).
   
     - Each pull request should address only one issue, not mix up code from multiple issues.
     
     - Each commit in the pull request has a meaningful commit message (including the JIRA id)
   
     - Once all items of the checklist are addressed, remove the above text and this checklist, leaving only the filled out template below.
   
   
   **(The sections below can be removed for hotfixes of typos)**
   -->
   
   ## What is the purpose of the change
   
   After https://github.com/apache/flink/pull/18316 is merged, we need to update the translation for https://nightlies.apache.org/flink/flink-docs-master/zh/docs/dev/table/concepts/overview/
   
   The markdown file is located in `flink/docs/content.zh/docs/dev/table/concepts/overview.md`
   
   ## Brief change log
     - Translate "Streaming Concepts" page to Chinese
     - backport for release-1.15
   
   ## Verifying this change
   
   This change is a trivial rework / code cleanup without any test coverage.
   
   ## Does this pull request potentially affect one of the following parts:
   
     - Dependencies (does it add or upgrade a dependency): no
     - The public API, i.e., is any changed class annotated with `@Public(Evolving)`: no
     - The serializers: no
     - The runtime per-record code paths (performance sensitive): no
     - Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: no
     - The S3 file system connector: no
   
   ## Documentation
   
     - Does this pull request introduce a new feature? no
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [flink] MartijnVisser commented on pull request #19401: [FLINK-25716][docs-zh] Translate "Streaming Concepts" page of "Applic…

Posted by GitBox <gi...@apache.org>.
MartijnVisser commented on PR #19401:
URL: https://github.com/apache/flink/pull/19401#issuecomment-1100038830

   @snailHumming Thanks for the PR. I've squashed and rebased commits. The successful CI run was in https://dev.azure.com/apache-flink/98463496-1af2-4620-8eab-a2ecc1a2e6fe/_build/results?buildId=34715. 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [flink] snailHumming commented on pull request #19401: [FLINK-25716][docs-zh] Translate "Streaming Concepts" page of "Applic…

Posted by GitBox <gi...@apache.org>.
snailHumming commented on PR #19401:
URL: https://github.com/apache/flink/pull/19401#issuecomment-1099975519

   https://github.com/apache/flink/pull/19488
   Here is the link


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [flink] snailHumming commented on pull request #19401: [FLINK-25716][docs-zh] Translate "Streaming Concepts" page of "Applic…

Posted by GitBox <gi...@apache.org>.
snailHumming commented on PR #19401:
URL: https://github.com/apache/flink/pull/19401#issuecomment-1099800909

   Should I create a new PR for applying these changes to master branch?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [flink] MartijnVisser commented on pull request #19401: [FLINK-25716][docs-zh] Translate "Streaming Concepts" page of "Applic…

Posted by GitBox <gi...@apache.org>.
MartijnVisser commented on PR #19401:
URL: https://github.com/apache/flink/pull/19401#issuecomment-1093086962

   @RocMarshal Could you help with a review here? 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [flink] MartijnVisser commented on pull request #19401: [FLINK-25716][docs-zh] Translate "Streaming Concepts" page of "Applic…

Posted by GitBox <gi...@apache.org>.
MartijnVisser commented on PR #19401:
URL: https://github.com/apache/flink/pull/19401#issuecomment-1099912967

   @snailHumming Yes please :)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [flink] RocMarshal commented on pull request #19401: [FLINK-25716][docs-zh] Translate "Streaming Concepts" page of "Applic…

Posted by GitBox <gi...@apache.org>.
RocMarshal commented on PR #19401:
URL: https://github.com/apache/flink/pull/19401#issuecomment-1094004365

   Thanks @snailHumming for the translation and @MartijnVisser ping.
   I check it ASAP.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [flink] RocMarshal commented on a diff in pull request #19401: [FLINK-25716][docs-zh] Translate "Streaming Concepts" page of "Applic…

Posted by GitBox <gi...@apache.org>.
RocMarshal commented on code in PR #19401:
URL: https://github.com/apache/flink/pull/19401#discussion_r847091756


##########
docs/content.zh/docs/dev/table/concepts/overview.md:
##########
@@ -34,106 +34,90 @@ Flink 的 [Table API]({{< ref "docs/dev/table/tableApi" >}}) 和 [SQL]({{< ref "
 
 下面这些页面包含了概念、实际的限制,以及流式数据处理中的一些特定的配置。
 
-State Management
+<a name="state-management"></a>
+
+状态管理
 ----------------
+流模式下运行的表程序利用了 Flink 作为有状态流处理器的所有能力。
 
-Table programs that run in streaming mode leverage all capabilities of Flink as a stateful stream
-processor.
+事实上,一个表程序(Table program)可以配置一个 [state backend]({{< ref "docs/ops/state/state_backends" >}})
+和多个不同的 [checkpoint 选项]({{< ref "docs/dev/datastream/fault-tolerance/checkpointing" >}})
+以处理对不同状态大小和容错需求。这可以对正在运行的 Table API & SQL 管道(pipeline)生成 savepoint,并在这之后用其恢复应用程序的状态。
 
-In particular, a table program can be configured with a [state backend]({{< ref "docs/ops/state/state_backends" >}})
-and various [checkpointing options]({{< ref "docs/dev/datastream/fault-tolerance/checkpointing" >}})
-for handling different requirements regarding state size and fault tolerance. It is possible to take
-a savepoint of a running Table API & SQL pipeline and to restore the application's state at a later
-point in time.
+<a name="state-usage"></a>
 
-### State Usage
+### 状态使用
 
-Due to the declarative nature of Table API & SQL programs, it is not always obvious where and how much
-state is used within a pipeline. The planner decides whether state is necessary to compute a correct
-result. A pipeline is optimized to claim as little state as possible given the current set of optimizer
-rules.
+由于 Table API & SQL 程序是声明式的,管道内的状态会在哪以及如何被使用并不明确。 Planner 会确认是否需要状态来得到正确的计算结果,
+管道会被现有优化规则集优化成尽可能少地使用状态。
 
 {{< hint info >}}
-Conceptually, source tables are never kept entirely in state. An implementer deals with logical tables
-(i.e. [dynamic tables]({{< ref "docs/dev/table/concepts/dynamic_tables" >}})). Their state requirements
-depend on the used operations.
+从概念上讲, 源表从来不会在状态中被完全保存。 实现者处理的是逻辑表(即[动态表]({{< ref "docs/dev/table/concepts/dynamic_tables" >}}))。
+它们的状态取决于用到的操作。
 {{< /hint >}}
 
-Queries such as `SELECT ... FROM ... WHERE` which only consist of field projections or filters are usually
-stateless pipelines. However, operations such as joins, aggregations, or deduplications require keeping
-intermediate results in a fault-tolerant storage for which Flink's state abstractions are used.
+形如 `SELECT ... FROM ... WHERE` 这种只包含字段映射或过滤器的查询的查询语句通常是无状态的管道。 然而诸如 join、
+聚合或去重操作需要在 Flink 抽象的容错存储内保存中间结果。
 
 {{< hint info >}}
-Please refer to the individual operator documentation for more details about how much state is required
-and how to limit a potentially ever-growing state size.
+请参考独立的算子文档来获取更多关于状态需求量和限制潜在增长状态大小的信息。
 {{< /hint >}}
 
-For example, a regular SQL join of two tables requires the operator to keep both input tables in state
-entirely. For correct SQL semantics, the runtime needs to assume that a matching could occur at any
-point in time from both sides. Flink provides [optimized window and interval joins]({{< ref "docs/dev/table/sql/queries/joins" >}})
-that aim to keep the state size small by exploiting the concept of [watermarks]({{< ref "docs/dev/table/concepts/time_attributes" >}}).
+例如对两个表进行 join 操作的普通 SQL 需要算子保存两个表的全部输入。基于正确的 SQL 语义,运行时假设两表会在任意时间点进行匹配。
+Flink 提供了 [优化窗口和时段 Join 聚合]({{< ref "docs/dev/table/sql/queries/joins" >}}) 
+以利用 [watermarks]({{< ref "docs/dev/table/concepts/time_attributes" >}}) 概念来让保持较小的状态规模。
 
-Another example is the following query that computes the number of clicks per session.
+另一个计算每个会话的点击次数的查询语句的例子如下
 
 ```sql
 SELECT sessionId, COUNT(*) FROM clicks GROUP BY sessionId;
 ```
 
-The `sessionId` attribute is used as a grouping key and the continuous query maintains a count
-for each `sessionId` it observes. The `sessionId` attribute is evolving over time and `sessionId`
-values are only active until the session ends, i.e., for a limited period of time. However, the
-continuous query cannot know about this property of `sessionId` and expects that every `sessionId`
-value can occur at any point of time. It maintains a count for each observed `sessionId` value.
-Consequently, the total state size of the query is continuously growing as more and more `sessionId`
-values are observed.
+`sessionId` 是用于分组的键,连续查询(Continuous Query)维护了每个观察到的 `sessionId` 次数。 `sessionId` 属性随着时间逐步演变,
+且 `sessionId` 的值只活跃到会话结束(即在有限的时间周期内)。然而连续查询无法得知sessionId的这个性质,
+并且预期每个 `sessionId` 值会在任何时间点上出现。这维护了每个可见的 `sessionId` 值。因此总状态量会随着 `sessionId` 的发现不断地增长。
+
+<a name="idle-state-retention-time"></a>
+
+#### 空闲状态维持时间
 
-#### Idle State Retention Time
+*空间状态位置时间*参数 [`table.exec.state.ttl`]({{< ref "docs/dev/table/config" >}}#table-exec-state-ttl) 
+定义了状态的键在被更新后要保持多长时间才被移除。在之前的查询例子中,`sessionId` 的数目会在配置的时间内未更新时立刻被移除。
 
-The *Idle State Retention Time* parameter [`table.exec.state.ttl`]({{< ref "docs/dev/table/config" >}}#table-exec-state-ttl)
-defines for how long the state of a key is retained without being updated before it is removed.
-For the previous example query, the count of a`sessionId` would be removed as soon as it has not
-been updated for the configured period of time.
+通过移除状态的键,连续查询会完全忘记它曾经见过这个键。如果一个状态带有曾被移除状态的键被处理了,这条记录将被认为是
+对应键的第一条记录。上述例子中意味着 `sessionId` 会再次从 `0` 开始计数。
 
-By removing the state of a key, the continuous query completely forgets that it has seen this key
-before. If a record with a key, whose state has been removed before, is processed, the record will
-be treated as if it was the first record with the respective key. For the example above this means
-that the count of a `sessionId` would start again at `0`.
+<a name="stateful-upgrades-and-evolution"></a>
 
-### Stateful Upgrades and Evolution
+### 状态化更新与演化
 
-Table programs that are executed in streaming mode are intended as *standing queries* which means they
-are defined once and are continuously evaluated as static end-to-end pipelines.
+表程序在流模式下执行将被视为*标准查询*,这意味着它们被定义一次后将被一直视为静态的端到端 (end-to-end) 管道
 
-In case of stateful pipelines, any change to both the query or Flink's planner might lead to a completely
-different execution plan. This makes stateful upgrades and the evolution of table programs challenging
-at the moment. The community is working on improving those shortcomings.
+对于这种状态化的管道,对查询和Flink的Planner的改动都有可能导致完全不同的执行计划。这让表程序的状态化的升级和演化在目前而言
+仍具有挑战,社区正致力于改进这一缺点。
 
-For example, by adding a filter predicate, the optimizer might decide to reorder joins or change the
-schema of an intermediate operator. This prevents restoring from a savepoint due to either changed
-topology or different column layout within the state of an operator.
+例如为了添加过滤谓词,优化器可能决定重排 join 或改变内部算子的 schema。 这会阻碍从 savepoint 的恢复,因为其被改变的拓扑和
+算子状态的列布局差异。
 
-The query implementer must ensure that the optimized plans before and after the change are compatible.
-Use the `EXPLAIN` command in SQL or `table.explain()` in Table API to [get insights]({{< ref "docs/dev/table/common" >}}#explaining-a-table).
+查询实现者需要确保改变在优化计划前后是兼容的,在 SQL 中使用 `EXPLAIN` 或在 Table API 中使用 `table.explain()` 
+可[获取详情]({{< ref "docs/dev/table/common" >}}#explaining-a-table).

Review Comment:
   ```suggestion
   可[获取详情]({{< ref "docs/dev/table/common" >}}#explaining-a-table)。
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [flink] flinkbot commented on pull request #19401: [FLINK-25716][docs-zh] Translate "Streaming Concepts" page of "Applic…

Posted by GitBox <gi...@apache.org>.
flinkbot commented on PR #19401:
URL: https://github.com/apache/flink/pull/19401#issuecomment-1092524551

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "9589d1e1ad03ca9c6780939ddb22228c8dc6762e",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "9589d1e1ad03ca9c6780939ddb22228c8dc6762e",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 9589d1e1ad03ca9c6780939ddb22228c8dc6762e UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     The @flinkbot bot supports the following commands:
   
    - `@flinkbot run azure` re-run the last Azure build
   </details>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [flink] RocMarshal commented on a diff in pull request #19401: [FLINK-25716][docs-zh] Translate "Streaming Concepts" page of "Applic…

Posted by GitBox <gi...@apache.org>.
RocMarshal commented on code in PR #19401:
URL: https://github.com/apache/flink/pull/19401#discussion_r846646275


##########
docs/content.zh/docs/dev/table/concepts/overview.md:
##########
@@ -34,106 +34,79 @@ Flink 的 [Table API]({{< ref "docs/dev/table/tableApi" >}}) 和 [SQL]({{< ref "
 
 下面这些页面包含了概念、实际的限制,以及流式数据处理中的一些特定的配置。
 
-State Management
+状态管理
 ----------------
+流模式下运行的表程序利用了Flink作为有状态流处理器的所有能力。
 
-Table programs that run in streaming mode leverage all capabilities of Flink as a stateful stream
-processor.
+事实上,一个表程序(Table program)可以配置一个 [state backend]({{< ref "docs/ops/state/state_backends" >}})
+和多个不同的 [checkpoint 选项]({{< ref "docs/dev/datastream/fault-tolerance/checkpointing" >}})
+以处理对不同状态大小和容错需求。这可以对正在运行的 Table API & SQL 管道(pipeline)生成 savepoint,并在这之后用其恢复应用程序的状态。
 
-In particular, a table program can be configured with a [state backend]({{< ref "docs/ops/state/state_backends" >}})
-and various [checkpointing options]({{< ref "docs/dev/datastream/fault-tolerance/checkpointing" >}})
-for handling different requirements regarding state size and fault tolerance. It is possible to take
-a savepoint of a running Table API & SQL pipeline and to restore the application's state at a later
-point in time.
+### 状态使用
 
-### State Usage
-
-Due to the declarative nature of Table API & SQL programs, it is not always obvious where and how much
-state is used within a pipeline. The planner decides whether state is necessary to compute a correct
-result. A pipeline is optimized to claim as little state as possible given the current set of optimizer
-rules.
+由于 Table API & SQL 程序是声明式的,管道内的状态会在哪以及如何被使用并不显然。 Planner 会确认是否需要状态来得到正确的计算结果,
+管道会被现有优化规则集优化成尽可能少地索要状态。

Review Comment:
   ```suggestion
   管道会被现有优化规则集优化成尽可能少地使用状态。
   ```



##########
docs/content.zh/docs/dev/table/concepts/overview.md:
##########
@@ -34,106 +34,79 @@ Flink 的 [Table API]({{< ref "docs/dev/table/tableApi" >}}) 和 [SQL]({{< ref "
 
 下面这些页面包含了概念、实际的限制,以及流式数据处理中的一些特定的配置。
 
-State Management
+状态管理
 ----------------
+流模式下运行的表程序利用了Flink作为有状态流处理器的所有能力。
 
-Table programs that run in streaming mode leverage all capabilities of Flink as a stateful stream
-processor.
+事实上,一个表程序(Table program)可以配置一个 [state backend]({{< ref "docs/ops/state/state_backends" >}})
+和多个不同的 [checkpoint 选项]({{< ref "docs/dev/datastream/fault-tolerance/checkpointing" >}})
+以处理对不同状态大小和容错需求。这可以对正在运行的 Table API & SQL 管道(pipeline)生成 savepoint,并在这之后用其恢复应用程序的状态。
 
-In particular, a table program can be configured with a [state backend]({{< ref "docs/ops/state/state_backends" >}})
-and various [checkpointing options]({{< ref "docs/dev/datastream/fault-tolerance/checkpointing" >}})
-for handling different requirements regarding state size and fault tolerance. It is possible to take
-a savepoint of a running Table API & SQL pipeline and to restore the application's state at a later
-point in time.
+### 状态使用
 
-### State Usage
-
-Due to the declarative nature of Table API & SQL programs, it is not always obvious where and how much
-state is used within a pipeline. The planner decides whether state is necessary to compute a correct
-result. A pipeline is optimized to claim as little state as possible given the current set of optimizer
-rules.
+由于 Table API & SQL 程序是声明式的,管道内的状态会在哪以及如何被使用并不显然。 Planner 会确认是否需要状态来得到正确的计算结果,
+管道会被现有优化规则集优化成尽可能少地索要状态。
 
 {{< hint info >}}
-Conceptually, source tables are never kept entirely in state. An implementer deals with logical tables
-(i.e. [dynamic tables]({{< ref "docs/dev/table/concepts/dynamic_tables" >}})). Their state requirements
-depend on the used operations.
+从概念上讲, 源表从来不会在状态中被完全保存。 实现者在处理逻辑表(即[动态表]({{< ref "docs/dev/table/concepts/dynamic_tables" >}}))时,

Review Comment:
   从概念上讲, 源表从来不会在状态中被完全保存。 实现者处理的是逻辑表(即[动态表]({{< ref "docs/dev/table/concepts/dynamic_tables" >}}))。



##########
docs/content.zh/docs/dev/table/concepts/overview.md:
##########
@@ -34,106 +34,79 @@ Flink 的 [Table API]({{< ref "docs/dev/table/tableApi" >}}) 和 [SQL]({{< ref "
 
 下面这些页面包含了概念、实际的限制,以及流式数据处理中的一些特定的配置。
 
-State Management
+状态管理
 ----------------
+流模式下运行的表程序利用了Flink作为有状态流处理器的所有能力。

Review Comment:
   ```suggestion
   流模式下运行的表程序利用了 Flink 作为有状态流处理器的所有能力。
   ```



##########
docs/content.zh/docs/dev/table/concepts/overview.md:
##########
@@ -34,106 +34,79 @@ Flink 的 [Table API]({{< ref "docs/dev/table/tableApi" >}}) 和 [SQL]({{< ref "
 
 下面这些页面包含了概念、实际的限制,以及流式数据处理中的一些特定的配置。
 
-State Management
+状态管理
 ----------------
+流模式下运行的表程序利用了Flink作为有状态流处理器的所有能力。
 
-Table programs that run in streaming mode leverage all capabilities of Flink as a stateful stream
-processor.
+事实上,一个表程序(Table program)可以配置一个 [state backend]({{< ref "docs/ops/state/state_backends" >}})
+和多个不同的 [checkpoint 选项]({{< ref "docs/dev/datastream/fault-tolerance/checkpointing" >}})
+以处理对不同状态大小和容错需求。这可以对正在运行的 Table API & SQL 管道(pipeline)生成 savepoint,并在这之后用其恢复应用程序的状态。
 
-In particular, a table program can be configured with a [state backend]({{< ref "docs/ops/state/state_backends" >}})
-and various [checkpointing options]({{< ref "docs/dev/datastream/fault-tolerance/checkpointing" >}})
-for handling different requirements regarding state size and fault tolerance. It is possible to take
-a savepoint of a running Table API & SQL pipeline and to restore the application's state at a later
-point in time.
+### 状态使用

Review Comment:
   ```suggestion
   <a name="xxx"></a>
   
   ### 状态使用
   ```
   
   missing link tag.



##########
docs/content.zh/docs/dev/table/concepts/overview.md:
##########
@@ -34,106 +34,79 @@ Flink 的 [Table API]({{< ref "docs/dev/table/tableApi" >}}) 和 [SQL]({{< ref "
 
 下面这些页面包含了概念、实际的限制,以及流式数据处理中的一些特定的配置。
 
-State Management
+状态管理
 ----------------
+流模式下运行的表程序利用了Flink作为有状态流处理器的所有能力。
 
-Table programs that run in streaming mode leverage all capabilities of Flink as a stateful stream
-processor.
+事实上,一个表程序(Table program)可以配置一个 [state backend]({{< ref "docs/ops/state/state_backends" >}})
+和多个不同的 [checkpoint 选项]({{< ref "docs/dev/datastream/fault-tolerance/checkpointing" >}})
+以处理对不同状态大小和容错需求。这可以对正在运行的 Table API & SQL 管道(pipeline)生成 savepoint,并在这之后用其恢复应用程序的状态。
 
-In particular, a table program can be configured with a [state backend]({{< ref "docs/ops/state/state_backends" >}})
-and various [checkpointing options]({{< ref "docs/dev/datastream/fault-tolerance/checkpointing" >}})
-for handling different requirements regarding state size and fault tolerance. It is possible to take
-a savepoint of a running Table API & SQL pipeline and to restore the application's state at a later
-point in time.
+### 状态使用
 
-### State Usage
-
-Due to the declarative nature of Table API & SQL programs, it is not always obvious where and how much
-state is used within a pipeline. The planner decides whether state is necessary to compute a correct
-result. A pipeline is optimized to claim as little state as possible given the current set of optimizer
-rules.
+由于 Table API & SQL 程序是声明式的,管道内的状态会在哪以及如何被使用并不显然。 Planner 会确认是否需要状态来得到正确的计算结果,
+管道会被现有优化规则集优化成尽可能少地索要状态。
 
 {{< hint info >}}
-Conceptually, source tables are never kept entirely in state. An implementer deals with logical tables
-(i.e. [dynamic tables]({{< ref "docs/dev/table/concepts/dynamic_tables" >}})). Their state requirements
-depend on the used operations.
+从概念上讲, 源表从来不会在状态中被完全保存。 实现者在处理逻辑表(即[动态表]({{< ref "docs/dev/table/concepts/dynamic_tables" >}}))时,
+它们的状态取决于用到的操作。
 {{< /hint >}}
 
-Queries such as `SELECT ... FROM ... WHERE` which only consist of field projections or filters are usually
-stateless pipelines. However, operations such as joins, aggregations, or deduplications require keeping
-intermediate results in a fault-tolerant storage for which Flink's state abstractions are used.
+形如 `SELECT ... FROM ... WHERE` 这种只包含字段映射或过滤器的查询的查询语句通常是无状态的管道。 然而诸如 join 、

Review Comment:
   ```suggestion
   形如 `SELECT ... FROM ... WHERE` 这种只包含字段映射或过滤器的查询的查询语句通常是无状态的管道。 然而诸如 join、
   ```



##########
docs/content.zh/docs/dev/table/concepts/overview.md:
##########
@@ -34,106 +34,79 @@ Flink 的 [Table API]({{< ref "docs/dev/table/tableApi" >}}) 和 [SQL]({{< ref "
 
 下面这些页面包含了概念、实际的限制,以及流式数据处理中的一些特定的配置。
 
-State Management
+状态管理
 ----------------
+流模式下运行的表程序利用了Flink作为有状态流处理器的所有能力。
 
-Table programs that run in streaming mode leverage all capabilities of Flink as a stateful stream
-processor.
+事实上,一个表程序(Table program)可以配置一个 [state backend]({{< ref "docs/ops/state/state_backends" >}})
+和多个不同的 [checkpoint 选项]({{< ref "docs/dev/datastream/fault-tolerance/checkpointing" >}})
+以处理对不同状态大小和容错需求。这可以对正在运行的 Table API & SQL 管道(pipeline)生成 savepoint,并在这之后用其恢复应用程序的状态。
 
-In particular, a table program can be configured with a [state backend]({{< ref "docs/ops/state/state_backends" >}})
-and various [checkpointing options]({{< ref "docs/dev/datastream/fault-tolerance/checkpointing" >}})
-for handling different requirements regarding state size and fault tolerance. It is possible to take
-a savepoint of a running Table API & SQL pipeline and to restore the application's state at a later
-point in time.
+### 状态使用
 
-### State Usage
-
-Due to the declarative nature of Table API & SQL programs, it is not always obvious where and how much
-state is used within a pipeline. The planner decides whether state is necessary to compute a correct
-result. A pipeline is optimized to claim as little state as possible given the current set of optimizer
-rules.
+由于 Table API & SQL 程序是声明式的,管道内的状态会在哪以及如何被使用并不显然。 Planner 会确认是否需要状态来得到正确的计算结果,

Review Comment:
   ```并不显然。``` -> ```并不明确``` ?



##########
docs/content.zh/docs/dev/table/concepts/overview.md:
##########
@@ -34,106 +34,79 @@ Flink 的 [Table API]({{< ref "docs/dev/table/tableApi" >}}) 和 [SQL]({{< ref "
 
 下面这些页面包含了概念、实际的限制,以及流式数据处理中的一些特定的配置。
 
-State Management
+状态管理
 ----------------
+流模式下运行的表程序利用了Flink作为有状态流处理器的所有能力。
 
-Table programs that run in streaming mode leverage all capabilities of Flink as a stateful stream
-processor.
+事实上,一个表程序(Table program)可以配置一个 [state backend]({{< ref "docs/ops/state/state_backends" >}})
+和多个不同的 [checkpoint 选项]({{< ref "docs/dev/datastream/fault-tolerance/checkpointing" >}})
+以处理对不同状态大小和容错需求。这可以对正在运行的 Table API & SQL 管道(pipeline)生成 savepoint,并在这之后用其恢复应用程序的状态。
 
-In particular, a table program can be configured with a [state backend]({{< ref "docs/ops/state/state_backends" >}})
-and various [checkpointing options]({{< ref "docs/dev/datastream/fault-tolerance/checkpointing" >}})
-for handling different requirements regarding state size and fault tolerance. It is possible to take
-a savepoint of a running Table API & SQL pipeline and to restore the application's state at a later
-point in time.
+### 状态使用
 
-### State Usage
-
-Due to the declarative nature of Table API & SQL programs, it is not always obvious where and how much
-state is used within a pipeline. The planner decides whether state is necessary to compute a correct
-result. A pipeline is optimized to claim as little state as possible given the current set of optimizer
-rules.
+由于 Table API & SQL 程序是声明式的,管道内的状态会在哪以及如何被使用并不显然。 Planner 会确认是否需要状态来得到正确的计算结果,
+管道会被现有优化规则集优化成尽可能少地索要状态。
 
 {{< hint info >}}
-Conceptually, source tables are never kept entirely in state. An implementer deals with logical tables
-(i.e. [dynamic tables]({{< ref "docs/dev/table/concepts/dynamic_tables" >}})). Their state requirements
-depend on the used operations.
+从概念上讲, 源表从来不会在状态中被完全保存。 实现者在处理逻辑表(即[动态表]({{< ref "docs/dev/table/concepts/dynamic_tables" >}}))时,
+它们的状态取决于用到的操作。
 {{< /hint >}}
 
-Queries such as `SELECT ... FROM ... WHERE` which only consist of field projections or filters are usually
-stateless pipelines. However, operations such as joins, aggregations, or deduplications require keeping
-intermediate results in a fault-tolerant storage for which Flink's state abstractions are used.
+形如 `SELECT ... FROM ... WHERE` 这种只包含字段映射或过滤器的查询的查询语句通常是无状态的管道。 然而诸如 join 、
+聚合或去重操作需要在Flink抽象的容错存储内保持中间结果。

Review Comment:
   ```suggestion
   聚合或去重操作需要在 Flink 抽象的容错存储内保存中间结果。
   ```



##########
docs/content.zh/docs/dev/table/concepts/overview.md:
##########
@@ -34,106 +34,79 @@ Flink 的 [Table API]({{< ref "docs/dev/table/tableApi" >}}) 和 [SQL]({{< ref "
 
 下面这些页面包含了概念、实际的限制,以及流式数据处理中的一些特定的配置。
 
-State Management
+状态管理
 ----------------
+流模式下运行的表程序利用了Flink作为有状态流处理器的所有能力。
 
-Table programs that run in streaming mode leverage all capabilities of Flink as a stateful stream
-processor.
+事实上,一个表程序(Table program)可以配置一个 [state backend]({{< ref "docs/ops/state/state_backends" >}})
+和多个不同的 [checkpoint 选项]({{< ref "docs/dev/datastream/fault-tolerance/checkpointing" >}})
+以处理对不同状态大小和容错需求。这可以对正在运行的 Table API & SQL 管道(pipeline)生成 savepoint,并在这之后用其恢复应用程序的状态。
 
-In particular, a table program can be configured with a [state backend]({{< ref "docs/ops/state/state_backends" >}})
-and various [checkpointing options]({{< ref "docs/dev/datastream/fault-tolerance/checkpointing" >}})
-for handling different requirements regarding state size and fault tolerance. It is possible to take
-a savepoint of a running Table API & SQL pipeline and to restore the application's state at a later
-point in time.
+### 状态使用
 
-### State Usage
-
-Due to the declarative nature of Table API & SQL programs, it is not always obvious where and how much
-state is used within a pipeline. The planner decides whether state is necessary to compute a correct
-result. A pipeline is optimized to claim as little state as possible given the current set of optimizer
-rules.
+由于 Table API & SQL 程序是声明式的,管道内的状态会在哪以及如何被使用并不显然。 Planner 会确认是否需要状态来得到正确的计算结果,
+管道会被现有优化规则集优化成尽可能少地索要状态。
 
 {{< hint info >}}
-Conceptually, source tables are never kept entirely in state. An implementer deals with logical tables
-(i.e. [dynamic tables]({{< ref "docs/dev/table/concepts/dynamic_tables" >}})). Their state requirements
-depend on the used operations.
+从概念上讲, 源表从来不会在状态中被完全保存。 实现者在处理逻辑表(即[动态表]({{< ref "docs/dev/table/concepts/dynamic_tables" >}}))时,
+它们的状态取决于用到的操作。
 {{< /hint >}}
 
-Queries such as `SELECT ... FROM ... WHERE` which only consist of field projections or filters are usually
-stateless pipelines. However, operations such as joins, aggregations, or deduplications require keeping
-intermediate results in a fault-tolerant storage for which Flink's state abstractions are used.
+形如 `SELECT ... FROM ... WHERE` 这种只包含字段映射或过滤器的查询的查询语句通常是无状态的管道。 然而诸如 join 、
+聚合或去重操作需要在Flink抽象的容错存储内保持中间结果。
 
 {{< hint info >}}
-Please refer to the individual operator documentation for more details about how much state is required
-and how to limit a potentially ever-growing state size.
+请参考独立的算子文档来获取更多关于状态需求量和限制潜在状态大小增长的信息。

Review Comment:
   ```suggestion
   请参考独立的算子文档来获取更多关于状态需求量和限制潜在增长状态大小的信息。
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [flink] MartijnVisser merged pull request #19401: [FLINK-25716][docs-zh] Translate "Streaming Concepts" page of "Applic…

Posted by GitBox <gi...@apache.org>.
MartijnVisser merged PR #19401:
URL: https://github.com/apache/flink/pull/19401


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@flink.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org