Shawn-Hx commented on a change in pull request #13410: URL: https://github.com/apache/flink/pull/13410#discussion_r495586969
########## File path: docs/dev/connectors/kafka.zh.md ########## @@ -23,90 +23,32 @@ specific language governing permissions and limitations under the License. --> +Flink 提供了 [Apache Kafka](https://kafka.apache.org) 连接器,用于向 Kafka topic 中读取或者写入数据,可提供精确一次的处理语义。 + * This will be replaced by the TOC {:toc} -此连接器提供了访问 [Apache Kafka](https://kafka.apache.org/) 事件流的服务。 - -Flink 提供了专门的 Kafka 连接器,向 Kafka topic 中读取或者写入数据。Flink Kafka Consumer 集成了 Flink 的 Checkpoint 机制,可提供 exactly-once 的处理语义。为此,Flink 并不完全依赖于跟踪 Kafka 消费组的偏移量,而是在内部跟踪和检查偏移量。 - -根据你的用例和环境选择相应的包(maven artifact id)和类名。对于大多数用户来说,使用 `FlinkKafkaConsumer`( `flink-connector-kafka` 的一部分)是比较合适的。 - -<table class="table table-bordered"> - <thead> - <tr> - <th class="text-left">Maven 依赖</th> - <th class="text-left">自从哪个版本<br>开始支持</th> - <th class="text-left">消费者和<br>生产者的类名称</th> - <th class="text-left">Kafka 版本</th> - <th class="text-left">注意</th> - </tr> - </thead> - <tbody> - <tr> - <td>flink-connector-kafka{{ site.scala_version_suffix }}</td> - <td>1.7.0</td> - <td>FlinkKafkaConsumer<br> - FlinkKafkaProducer</td> - <td>>= 1.0.0</td> - <td> - 这个通用的 Kafka 连接器尽力与 Kafka client 的最新版本保持同步。该连接器使用的 Kafka client 版本可能会在 Flink 版本之间发生变化。从 Flink 1.9 版本开始,它使用 Kafka 2.2.0 client。当前 Kafka 客户端向后兼容 0.10.0 或更高版本的 Kafka broker。 - 但是对于 Kafka 0.11.x 和 0.10.x 版本,我们建议你分别使用专用的 flink-connector-kafka-0.11{{ site.scala_version_suffix }} 和 flink-connector-kafka-0.10{{ site.scala_version_suffix }} 连接器。 - </td> - </tr> - </tbody> -</table> - -接着,在你的 maven 项目中导入连接器: - -{% highlight xml %} -<dependency> - <groupId>org.apache.flink</groupId> - <artifactId>flink-connector-kafka{{ site.scala_version_suffix }}</artifactId> - <version>{{ site.version }}</version> -</dependency> -{% endhighlight %} - -请注意:目前流连接器还不是二进制分发的一部分。 -[在此处]({{ site.baseurl }}/zh/dev/project-configuration.html)可以了解到如何链接它们以实现在集群中执行。 - -## 安装 Apache Kafka - -* 按照 [ Kafka 快速入门](https://kafka.apache.org/documentation.html#quickstart)的说明下载代码并启动 Kafka 服务器(每次启动应用程序之前都需要启动 Zookeeper 和 Kafka server)。 -* 如果 Kafka 和 Zookeeper 服务器运行在远端机器上,那么必须要将 `config/server.properties` 文件中的 `advertised.host.name`属性设置为远端设备的 IP 地址。 - -## Kafka 1.0.0+ 连接器 - -从 Flink 1.7 开始,有一个新的通用 Kafka 连接器,它不跟踪特定的 Kafka 主版本。相反,它是在 Flink 发布时跟踪最新版本的 Kafka。 -如果你的 Kafka broker 版本是 1.0.0 或 更新的版本,你应该使用这个 Kafka 连接器。 -如果你使用的是 Kafka 的旧版本( 0.11 或 0.10 ),那么你应该使用与 Kafka broker 版本相对应的连接器。 - -### 兼容性 - -通过 Kafka client API 和 broker 的兼容性保证,通用的 Kafka 连接器兼容较旧和较新的 Kafka broker。 -它兼容 Kafka broker 0.11.0 或者更高版本,具体兼容性取决于所使用的功能。有关 Kafka 兼容性的详细信息,请参考 [Kafka 文档](https://kafka.apache.org/protocol.html#protocol_compatibility)。 - -### 将 Kafka Connector 从 0.11 迁移到通用版本 +## 依赖 -以便执行迁移,请参考 [升级 Jobs 和 Flink 版本指南]({{ site.baseurl }}/zh/ops/upgrading.html): -* 在全程中使用 Flink 1.9 或更新版本。 -* 不要同时升级 Flink 和 Operator。 -* 确保你的 Job 中所使用的 Kafka Consumer 和 Kafka Producer 分配了唯一的标识符(uid)。 -* 使用 stop with savepoint 的特性来执行 savepoint(例如,使用 `stop --withSavepoint`)[CLI 命令]({{ site.baseurl }}/zh/ops/cli.html)。 - -### 用法 - -要使用通用的 Kafka 连接器,请为它添加依赖关系: +Apache Flink 集成了通用的 Kafka 连接器,它会尽力与 Kafka client 的最新版本保持同步。 +该连接器使用的 Kafka client 版本可能会在 Flink 版本之间发生变化。 +当前 Kafka client 向后兼容 0.10.0 或更高版本的 Kafka broker。 Review comment: 这里我不是很确定。 英文文档中的原文是:"Modern Kafka clients are backwards compatible with broker versions 0.10.0 or later"。"backwards compatible" 直译的话应该是 “向后兼容” ? ---------------------------------------------------------------- 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. For queries about this service, please contact Infrastructure at: [email protected]
