Kafka中文文档

文章来源:https://kafka.cadn.net.cn 

什么是事件流式处理?

事件流是人体中枢神经系统的数字等价物。它是 为“永远在线”的世界奠定技术基础,在这个世界里,企业越来越多地使用软件定义 和 automated,而软件的用户更多的是 Software。

从技术上讲,事件流式处理是从事件源实时捕获数据的做法 如数据库、传感器、移动设备、云服务和流形式的软件应用程序 事件;持久存储这些事件流以供以后检索;操作、处理和反应 实时和回顾性地访问事件流;并将事件流路由到不同的 destination 技术。因此,事件流确保了 数据,以便在正确的时间、正确的地点提供正确的信息。

事件流式处理可以用于什么?

事件流适用于众多行业和组织的各种使用案例。它的许多示例包括:

  • 实时处理付款和金融交易,例如在证券交易所、银行和保险中。
  • 实时跟踪和监控汽车、卡车、车队和货物,例如物流和汽车行业。
  • 持续捕获和分析来自 IoT 设备或其他设备(例如工厂和风电场)的传感器数据。
  • 收集客户互动和订单并立即做出反应,例如在零售、酒店和旅游行业以及移动应用程序中。
  • 监测住院护理的患者并预测病情变化,以确保在紧急情况下得到及时治疗。
  • 连接、存储和提供公司不同部门生成的数据。
  • 作为数据平台、事件驱动型架构和微服务的基础。

Apache Kafka® 是一个事件流式处理平台。那是什么意思?

Kafka 结合了三个关键功能,因此您可以使用单个久经考验的解决方案实现端到端事件流的使用案例:

  1. 发布(写入)和订阅(读取)事件流,包括连续导入/导出 来自其他系统的数据。
  2. 根据需要持久可靠地存储事件流。
  3. 在事件发生时或回顾性地处理事件流。

所有这些功能都以分布式、高度可扩展、弹性、容错和 安全的方式。Kafka 可以部署在裸机硬件、虚拟机和容器上,也可以部署在本地 以及在云中。您可以选择自行管理 Kafka 环境和使用完全托管式 由各种供应商提供的服务。

简而言之,Kafka 是如何工作的?

Kafka 是一个分布式系统,由服务器和客户端组成,这些服务器客户端 通过高性能 TCP 网络协议进行通信。 它可以部署在本地和云中的裸机硬件、虚拟机和容器上 环境。

服务器:Kafka 作为一个或多个服务器的集群运行,这些服务器可以跨越多个数据中心 或云区域。其中一些服务器构成了存储层,称为代理。其他服务器运行 Kafka Connect 以持续导入和导出 数据作为事件流,以将 Kafka 与现有系统(如关系数据库)集成,以及 其他 Kafka 集群。为了让您实施任务关键型使用案例,Kafka 集群具有高度可扩展性 和容错:如果它的任何服务器出现故障,其他服务器将接管它们的工作以确保 连续运行,不会丢失任何数据。

客户端:它们允许您编写分布式应用程序和微服务,这些应用程序和微服务可以读取、写入、 并行、大规模和以容错方式处理事件流,即使在网络的情况下也是如此 问题或机器故障。Kafka 附带了一些这样的客户端,这些客户端由 Kafka 提供的数十个客户端进行增强 社区:客户端可用于 Java 和 Scala,包括更高级别的 Kafka Streams 库、Go、Python、C/C++ 和 许多其他编程语言以及 REST API。

主要概念和术语

事件记录了世界上或您的企业中 “发生了什么” 的事实。在文档中也称为 record 或 message。当您向 Kafka 读取或写入数据时,您以事件的形式执行此操作。从概念上讲,事件具有键、值、时间戳和可选的元数据标头。下面是一个示例事件:

  • 事件键:“Alice”
  • 事件价值:“已向 Bob 支付 200 美元”
  • 事件时间戳:“2020 年 6 月 25 日下午 2:06。

创建者是将事件发布(写入)到 Kafka 的客户端应用程序,而使用者是订阅(读取和处理)这些事件的客户端应用程序。在 Kafka 中,生产者和使用者完全解耦且彼此不可知,这是实现 Kafka 众所周知的高可扩展性的关键设计元素。例如,生产者永远不需要等待消费者。Kafka 提供各种保证,例如能够精确处理一次事件。

事件被组织并持久存储在主题中。非常简单,主题类似于文件系统中的文件夹,事件是该文件夹中的文件。示例主题名称可以是 “payments”。Kafka 中的主题始终是多创建者和多订阅者:一个主题可以有零个、一个或多个向其写入事件的创建者,以及订阅这些事件的零个、一个或多个使用者。可以根据需要随时读取主题中的事件 - 与传统消息传递系统不同,事件在使用后不会删除。相反,您可以通过每个主题的配置设置定义 Kafka 应将事件保留多长时间,之后将丢弃旧事件。Kafka 的性能在数据大小方面实际上是恒定的,因此长时间存储数据是完全可以的。

主题是分区的,这意味着主题分布在位于不同 Kafka 代理上的多个“存储桶”中。这种分布式数据放置对于可伸缩性非常重要,因为它允许客户端应用程序同时从多个代理读取和写入数据。当新事件发布到主题时,它实际上会附加到主题的某个分区中。具有相同事件键的事件(例如,客户或车辆 ID)将写入同一分区,Kafka 保证给定主题分区的任何使用者将始终以与写入事件完全相同的顺序读取该分区的事件。

图:此示例主题有四个分区 P1–P4。两个不同的生产者客户端正在发布 通过网络将事件写入主题的 分区。具有相同键的事件(由它们在图中的颜色表示)将写入相同的 分区。请注意,如果合适,两个 producer 都可以写入同一个分区。

为了使您的数据具有容错性和高可用性,每个主题都可以复制,甚至可以跨地理区域或数据中心复制,以便始终有多个代理拥有数据副本,以防万一出现问题,您想对代理进行维护,等等。常见的生产设置是复制因子 3,即数据始终有三个副本。此复制在 topic-partitions 级别执行。

这本引物应该足以作为介绍。如果您感兴趣,文档的 Design 部分详细介绍了 Kafka 的各种概念。

Kafka API 接口

除了用于管理和管理任务的命令行工具外,Kafka 还有五个适用于 Java 和 Scala 的核心 API:

  • 用于管理和检查主题、代理和其他 Kafka 对象的 Admin API。
  • 生产者 API,用于将事件流发布(写入)到一个或多个 Kafka 主题。
  • Consumer API,用于订阅(读取)一个或多个主题并处理向它们生成的事件流。
  • Kafka Streams API,用于实施流处理应用程序和微服务。它提供更高级别的函数来处理事件流,包括转换、有状态操作(如聚合和联接)、窗口化、基于事件时间的处理等。从一个或多个主题中读取输入,以便生成对一个或多个主题的输出,从而有效地将输入流转换为输出流。
  • Kafka Connect API,用于构建和运行可重用的数据导入/导出连接器,这些连接器使用(读取)或生成(写入)来自外部系统和应用程序的事件流,以便它们可以与 Kafka 集成。例如,指向关系数据库(如 PostgreSQL)的连接器可能会捕获对一组表的每次更改。但是,在实践中,您通常不需要实施自己的连接器,因为 Kafka 社区已经提供了数百个现成的连接器。

从这里去哪里

  • 要获得 Kafka 的实践经验,请遵循快速入门。
  • 要更详细地了解 Kafka,请阅读文档。 您还可以选择 Kafka 书籍和学术论文。
  • 浏览用例,了解我们全球社区中的其他用户如何从 Kafka 中获得价值。
  • 加入当地的 Kafka 聚会小组,观看 Kafka 社区的主要会议 Kafka 峰会的演讲。

文章来源:kafka -- 南京筱麦软件有限公司 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/69872.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LabVIEW温度修正部件测试系统

LabVIEW温度修正部件测试系统 这个基于LabVIEW的温度修正部件测试系统旨在解决飞行器温度测量及修正电路的测试需求。该系统的意义在于提供一个可靠的测试平台,用于评估温度修正部件在实际飞行器环境中的性能表现,从而确保飞行器的安全性和可靠性。 系统…

解析与使用 Apache HttpClient 进行网络请求和数据抓取

目录 1. 什么是 HttpClient? 2. 基本使用 3. 使用 HttpClient 爬取腾讯天气的数据 4. 爬取拉勾招聘网站的职位信息 5. 总结 前言 Apache HttpClient 是 Apache 提供的一个用于处理 HTTP 请求和响应的工具类库。它提供了一种便捷、功能强大的方式来发送 HTTP 请…

扣子平台音频功能:让声音也能“智能”起来。扣子免费系列教程(14)

在数字化时代,音频内容的重要性不言而喻。无论是在线课程、有声读物,还是各种多媒体应用,音频都是传递信息、增强体验的关键元素。扣子平台的音频功能,为开发者和内容创作者提供了一个强大而灵活的工具,让音频的使用和…

【自开发工具介绍】SQLSERVER的ImpDp和ExpDp工具01

1、开发背景 大家都很熟悉,Oracle提供了Impdp和ExpDp工具,功能很强大,可以进行db的导入导出的处理。但是对于Sqlserver数据库只是提供了简单的图形化的导出导入工具,在实际的开发和生产环境不太可能让用户在图形化的界面选择移行…

上手DeepSeek大模型:本地化安装部署,确保数据不泄露

摘要:过年前DeepSeek横空出世,在世界范围内掀起AI狂潮,成了大家茶余饭后的话题。对于普通人怎样使用这个大模型呢?这篇文章来上手实践。 使用DeepSeek最简单的办法就是使用在线版或者手机版。 - 1 - 使用在线版 在浏览器中输…

蓝桥杯刷题DAY1:前缀和

所谓刷题,讲究的就是细心 帕鲁服务器崩坏【算法赛】 “那个帕鲁我已经观察你很久了,我对你是有些失望的,进了这个营地,不是把事情做好就可以的,你需要有体系化思考的能力。” 《幻兽帕鲁》火遍全网,成为…

【React】PureComponent 和 Component 的区别

前言 在 React 中,PureComponent 和 Component 都是用于创建组件的基类,但它们有一个主要的区别:PureComponent 会给类组件默认加一个shouldComponentUpdate周期函数。在此周期函数中,它对props 和 state (新老的属性/状态)会做一…

ZZNUOJ(C/C++)基础练习1021——1030(详解版)

目录 1021 : 三数求大值 C语言版 C版 代码逻辑解释 1022 : 三整数排序 C语言版 C版 代码逻辑解释 补充 (C语言版,三目运算)C类似 代码逻辑解释 1023 : 大小写转换 C语言版 C版 1024 : 计算字母序号 C语言版 C版 代码逻辑总结…

此虚拟机的处理器所支持的功能不同于保存虚拟机状态的虚拟机的处理器所支持的功能

1.问题:今天记录下自己曾经遇到的一个问题,就是复制别人虚拟机时弹出来的一个报错: 如图,根本原因就在于虚拟机版本的问题,无法对应的上,所以必须升级虚拟机。 2.问题解决: 1.直接点击放弃,此时…

高温环境对电机性能的影响与LabVIEW应用

电机在高温环境下的性能可能受到多种因素的影响,尤其是对于持续工作和高负荷条件下的电机。高温会影响电机的效率、寿命以及可靠性,导致设备出现过热、绝缘损坏等问题。因此,在设计电机控制系统时,特别是在高温环境下,…

C++ Primer 处理类型

欢迎阅读我的 【CPrimer】专栏 专栏简介:本专栏主要面向C初学者,解释C的一些基本概念和基础语言特性,涉及C标准库的用法,面向对象特性,泛型特性高级用法。通过使用标准库中定义的抽象设施,使你更加适应高级…

本地部署DeepSeek开源多模态大模型Janus-Pro-7B实操

本地部署DeepSeek开源多模态大模型Janus-Pro-7B实操 Janus-Pro-7B介绍 Janus-Pro-7B 是由 DeepSeek 开发的多模态 AI 模型,它在理解和生成方面取得了显著的进步。这意味着它不仅可以处理文本,还可以处理图像等其他模态的信息。 模型主要特点:Permalink…

使用LLaMA-Factory对AI进行认知的微调

使用LLaMA-Factory对AI进行认知的微调 引言1. 安装LLaMA-Factory1.1. 克隆仓库1.2. 创建虚拟环境1.3. 安装LLaMA-Factory1.4. 验证 2. 准备数据2.1. 创建数据集2.2. 更新数据集信息 3. 启动LLaMA-Factory4. 进行微调4.1. 设置模型4.2. 预览数据集4.3. 设置学习率等参数4.4. 预览…

three.js+WebGL踩坑经验合集(6.2):负缩放,负定矩阵和行列式的关系(3D版本)

本篇将紧接上篇的2D版本对3D版的负缩放矩阵进行解读。 (6.1):负缩放,负定矩阵和行列式的关系(2D版本) 既然three.js对3D版的负缩放也使用行列式进行判断,那么,2D版的结论用到3D上其实是没毛病的,THREE.Li…

软件工程经济学-日常作业+大作业

目录 一、作业1 作业内容 解答 二、作业2 作业内容 解答 三、作业3 作业内容 解答 四、大作业 作业内容 解答 1.建立层次结构模型 (1)目标层 (2)准则层 (3)方案层 2.构造判断矩阵 (1)准则层判断矩阵 (2)方案层判断矩阵 3.层次单排序及其一致性检验 代码 …

小程序的协同工作与发布

1.小程序API的三大分类 2.小程序管理的概念,以及成员管理两个方面 3.开发者权限说明以及如何维护项目成员 4.小程序版本

架构技能(六):软件设计(下)

我们知道,软件设计包括软件的整体架构设计和模块的详细设计。 在上一篇文章(见 《架构技能(五):软件设计(上)》)谈了软件的整体架构设计,今天聊一下模块的详细设计。 模…

基于微信小程序的实习记录系统设计与实现(LW+源码+讲解)

专注于大学生项目实战开发,讲解,毕业答疑辅导,欢迎高校老师/同行前辈交流合作✌。 技术范围:SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:…

B-树:解锁大数据存储和与快速存储的密码

在我们学习数据结构的过程中,我们会学习到二叉搜索树、二叉平衡树、红黑树。 这些无一例外,是以一个二叉树展开的,那么对于我们寻找其中存在树中的数据,这个也是一个不错的方法。 但是,如若是遇到了非常大的数据容量…

【视频+图文详解】HTML基础4-html标签的基本使用

图文教程 html标签的基本使用 无序列表 作用&#xff1a;定义一个没有顺序的列表结构 由两个标签组成&#xff1a;<ul>以及<li>&#xff08;两个标签都属于容器级标签&#xff0c;其中ul只能嵌套li标签&#xff0c;但li标签能嵌套任何标签&#xff0c;甚至ul标…