本书详细阐述了与Apache Kafka 2.0相关的基本解决方案,主要包括配置Kafka、消息验证、消息增强、序列化、模式注册表、Kafka Streams、KSQL、Kafka Connect等内容。此外,本书还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。
本书既可作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学教材和参考手册。
网站首页 软件下载 游戏下载 翻译软件 电子书下载 电影下载 电视剧下载 教程攻略
书名 | Apache Kafka2.0入门与实践 |
分类 | 计算机-操作系统 |
作者 | (美)劳尔·埃斯特拉达 |
出版社 | 清华大学出版社 |
下载 | ![]() |
简介 | 内容推荐 本书详细阐述了与Apache Kafka 2.0相关的基本解决方案,主要包括配置Kafka、消息验证、消息增强、序列化、模式注册表、Kafka Streams、KSQL、Kafka Connect等内容。此外,本书还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。 本书既可作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学教材和参考手册。 目录 第1章 配置Kafka 1.1 Kafka简介 1.2 安装Kafka 1.2.1 在Linux中安装Kafka 1.2.2 在macOS中安装Kafka 1.2.3 安装Confluent Platform 1.3 运行Kafka 1.4 运行Confluent Platform 1.5 运行Kafka代理 1.6 运行Kafka topic 1.7 命令行消息生产者 1.8 命令行消息消费者 1.9 使用kafkacat 1.10 本章小结 第2章 消息验证 2.1 企业服务总线 2.2 事件建模 2.3 配置项目 2.4 从Kafka中读取数据 2.5 向Kafka中写入数据 2.6 运行处理引擎 2.7 验证器的Java编码 2.8 运行验证 2.9 本章小结 第3章 消息增强 3.1 获取地理位置 3.2 增强消息 3.3 析取货币价格 3.4 利用货币价格充实消息 3.5 运行引擎 3.6 析取天气数据 3.7 本章小结 第4章 序列化 4.1 Kafka物联网公司Kioto 4.2 项目配置 4.3 Constants类 4.4 HealthCheck消息 4.5 Java PlainProducer类 4.6 运行PlainProducer 4.7 Java PlainConsumer类 4.8 Java PlainProcessor对象 4.9 运行PlainProcessor 4.10 自定义序列化器 4.11 Java CustomProducer类 4.12 运行CustomProducer 4.13 自定义反序列化器 4.14 Java CustomConsumer类 4.15 Java CustomProcessor类 4.16 运行CustomProcessor 4.17 本章小结 第5章 模式注册表 5.1 Avro简介 5.2 定义模式 5.3 启动Schema Registry 5.4 使用Schema Registry 5.4.1 在值主题下注册一个新的模式版本 5.4.2 在键主题下注册一个新的模式版本 5.4.3 将现有的模式注册至新的主题中 5.4.4 列出全部主题 5.4.5 通过全局唯一ID查询模式 5.4.6 列出注册于healthchecks-value主题下的全部模式版本 5.4.7 查询注册于healthchecks-value主题下的模式版本 5.4.8 删除注册于healthchecks-value主题下的模式版本 5.4.9 删除最近注册于healthchecks-value主题下的模式 5.4.10 删除注册于healthchecks-value主题下的全部模式版本 5.4.11 检测模式是否已注册于healthchecks-key主题下 5.4.12 模式兼容性测试 5.4.13 获取顶级兼容性配置 5.4.14 全局更新兼容性需求条件 5.4.15 更新healthchecks-value主题下的兼容性需求条件 5.5 Java AvroProducer 5.6 运行AvroProducer 5.7 Java AvroConsumer类 5.8 Java AvroProcessor类 5.9 运行AvroProcessor 5.10 本章小结 第6章 Kafka Streams 6.1 Kafka Streams简介 6.2 项目配置 6.3 Java PlainStreamsProcessor类 6.4 运行PlainStreamsProcessor 6.5 Kafka Streams扩展 6.6 Java CustomStreamsProcessor类 6.7 运行CustomStreamsProcessor 6.8 Java AvroStreamsProcessor类 6.9 运行AvroStreamsProcessor 6.10 延迟事件处理 6.11 基本场景 6.12 延迟事件的生成 6.13 运行EventProducer 6.14 Kafka Streams处理程序 6.15 运行流处理程序 6.16 流处理程序分析 6.17 本章小结 第7章 KSQL 7.1 KSQL简介 7.2 运行KSQL 7.3 使用KSQL CLI 7.4 利用KSQL处理数据 7.5 写入topic中 7.6 本章小结 第8章 Kafka Connect 8.1 Kafka Connect简介 8.2 项目配置 8.3 Spark流处理程序 8.4 从Spark中读取Kafka 8.5 数据转换 8.6 数据处理 8.7 从Spark中写入至Kafka 8.8 运行SparkProcessor 8.9 本章小结 序言 公司。同时,Uber、Twitter、Netflix、Spotify、 当某个代码块希望引起读者的足够重视时Blizzard、LinkedIn和PayPal等公司每天也采用Apache Kafka处理大量的消息。时至今日,Apache Kafka可用于 采集数据、执行实时数据分析,并执行实时数据流处理。 另外,Kafka还可用于向复杂事件处理(CEP)架构中输入 事件、部署于微服务架构中,并可实现于物联网架构中。 在数据流领域中,Kafka Streams也面临着一些竞争对手 ,例如Apache Spark、Apache Flink、Akka Streams、 Apache Pulsar和Apache Beam。尽管如此,Apache Kafka仍拥有一个无法替代的优势,即易于使用。Kafka易 于实现和维护,其学习曲线也相对平缓。本书是一本实用 的快速入门指南,并侧重于展示实际用例,且较少涉及 Kafka架构方面的理论知识。本书旨在讲解Apache Kafka 使用者所面临的日常问题。适用读者? 本书是一本适用于 数据工程师、软件开发人员和数据架构师的快速入门指南 。? 本书注重于编程实现过程,同时详细介绍了Apache Kafka 2.0方面的知识。? 书中的全部示例均采用Java 8 实现,因此建议读者具有与Java 8相关的背景知识,这也 是阅读本书的唯一前提条件。本书内容第1章:配置Kafka 。介绍了Apache Kafka 2.0的基础知识,包括如何安装、 配置和运行Kafka。此外,本章还讨论了如何利用Kafka代 理和topic执行基本的操作。第2章:消息验证。探讨了如 何针对企业服务总线进行数据验证,其间还会涉及如何从 输入流中过滤消息。第3章:消息增强。将考查消息增强机 制,对于企业服务总线来说,这也是一项较为重要的任务 。消息增强可将附加信息整合至系统消息中。第4章:序列 化。将讨论如何构建序列化器和反序列化器,进而写入、 读取或转换消息(二进制、原始字符串、JSON或Avro格式 )。第5章:模式注册表。将利用Kafka Schema Registry 验证、序列化、反序列化并维护消息的历史版本。第6章: Kafka Streams。将阐述如何获取与消息分组相关的信息 (消息流),以及如何获取附加信息。例如,如何利用 Kafka Streams处理消息的聚合和合成操作。第7章:KSQL 。将讨论如何在Kafka Streams的基础上利用SQL操控事件 流。第8章:Kafka Connect。将介绍快速数据处理工具, 以及如何与Apache Kafka结合使用以生成数据处理管线。 其中,相关工具包括Apache Spark和Apache Beam。背景 知识在阅读本书时,建议读者具有Java 8方面的编程背景 知识。执行本书示例所需的最低配置是IntelRCore i3处 理器、4GB RAM和128GB磁盘空间。这里推荐使用Linux或 macOS操作系统,因为相关示例并不完全支持Windows操作 系统。资源下载读者可访问http://www.packtpub.com并 通过个人账户下载示例代码文件。另外,在 http://www.packtpub.com/support中注册成功后,我们 将以电子邮件的方式将相关文件发与读者。读者可根据下 列步骤下载代码文件:? 利用电子邮件地址和密码登录或 注册我们的网站www.packtpub.com。? 单击SUPPORT选 项卡。? 单击Code Downloads & Errata。? 在Serach 文本框中输入书名。当文件下载完毕后,确保使用下列最 新版本软件解压文件夹:? Windows系统下的WinRAR/7- Zip。? Mac系统下的Zipeg/iZip/UnRarX。? Linux系 统下的7-Zip/PeaZip。另外,读者还可访问 GitHub 获取 本书的代码包,对应网址为 https://github.com/ PacktPublishing/Apache-Kafka-Quick-Start-Guide。 此外,读者还可访问 https://github.com/PacktPublishing/以了解丰富的代 码和视频资源。本书约定本书通过不同的文本风格区分相 应的信息类型。下面通过一些示例对此类风格以及具体含 义的解释予以展示。代码块如下所示。{ "event": "CUSTOMER_CONSULTS_ETHPRICE", "customer": { "id": "14862768", "name": "Snowden, Edward", "ipAddress": "95.31.18.111" }, "currency": { "name": "ethereum", "price": "RUB" }, "timestamp": "2018-09- 28T09:09:09Z\ ,一般会采用黑体表示,如下所示。dependencies { compile group: 'org.apache.kafka', name: 'kafka_2.12', version:'2.0.0' compile group: 'com.maxmind.geoip', name: 'geoip-api', version:'1.3.1' compile group: 'com.fasterxml.jackson.core', name: 'jackson- core', version: '2.9.7'}命令行输入或输出则 采用下列方式表达:) (confluent-path)/bin/kafka- topics.sh --list --ZooKeeperlocalhost:2181 图标 表示较为重要的说明事项。 图标则表示提示信息和操作 技巧。 读者反馈和客户支持欢迎读者对本书的建议或意见予 以反馈。对此,读者可向feedback@packtpub.com发送邮 件,并以书名作为邮件标题。若读者对本书有任何疑问, 均可发送邮件至questions@packtpub.com,我们将竭诚为 您服务。若读者针对某项技术具有专家级的见解,抑或计 划撰写书籍或完善某部著作的出版工作,则可访问 www.packtpub.com/authors。勘误表尽管我们在最大程度 上做到尽善尽美,但错误依然在所难免。如果读者发现谬 误之处,无论是文字错误抑或是代码错误,还望不吝赐教 。对此,读者可访问http://www. packtpub.com/submit-errata选取对应书籍,单击 Errata Submission Form超链接,并输入相关问题的详细 内容。版权须知一直以来,互联网上的版权问题从未间断 ,Packt出版社对此类问题异常重视。若读者在互联网上发 现本书任意形式的副本,请告知网络地址或网站名称,我 们将对此予以处理。关于盗版问题,读者可发送邮件至 copyright@packtpub.com。问题解答若读者对本书有任何 疑问,均可发送邮件至questions@packtpub.com,我们将 竭诚为您服务。 导语 本书是一本适用于数据工程师、软件开发人员和数据架构师的快速入门指南,详细阐述了与Apache Kafka 2.0相关的基本解决方案,主要包括配置Kafka、消息验证、消息增强、序列化、模式注册表、Kafka Streams、KSQL、Kafka Connect等内容。本书注重于编程实现过程,并提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。 |
随便看 |
|
霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。