| 作者 |
| 曼尼施·库马尔 尚沙勒·辛格 |
| 丛书名 |
| 出版社 |
| 清华大学出版社 |
| ISBN |
| 9787302509363 |
| 简要 |
| 简介 |
| 内容简介 Apache Kafka是一个流行的分布式流平台,充当消息队列或企业消息传递系统。它用来发布和订阅数据流,并在发生错误时以容错方式处理它们。 本书共13章,全面介绍使用Apache Kafka等大数据工具设计和构建企业级流应用方面的内容,包括构建流应用程序的*实践,并解决了一些常见的挑战,例如如何高效地使用Kafka轻松处理高容量数据。完成本书的学习后,读者能使用Kafka设计高效的流数据应用程序。 本书既适合Kafka初学者、大数据应用开发人员、大数据应用运维人员阅读,也适合高等院校与培训学校相关专业的师生教学参考。 |
| 目录 |
| 其他生产者配置 40 Java编程语言:Kafka生产者示例 42 常见的消息发布模式 44 最佳实践 46 总 结 48 第4章 深入研究Kafka消费者 49 Kafka消费者内部机制 50 理解Kafka消费者的职责 50 Kafka消费者API 52 消费者配置 52 订阅和轮询 54 提交和轮询 56 其他配置 59 利用Java实现Kafka消费者 60 利用Scala实现Kafka消费者 62 Rebalance listeners 64 常用的消息消费模式 64 最佳实践 67 总 结 68 第5章 集成Kafka 构建Spark Streaming应用 69 Spark介绍 70 Spark架构 70 Spark的核心 72 Spark生态系统 73 Spark Streaming 75 Receiver-based集成 75 Receiver-based approach的缺点 77 Receiver-based集成的Java示例 77 Receiver-based集成的Scala示例 79 Direct approach 80 Direct approach的Java示例 82 Direct approach的Scala示例 83 日志处理用例欺诈IP检测 84 Maven 85 生产者 89 Reader属性 89 生产者代码 90 欺诈IP查找 92 暴露Hive表 93 Streaming代码 94 总 结 97 第6章 集成Kafka构建Storm应用 98 Apache Storm介绍 98 Storm集群架构 99 Storm应用程序的概念 100 Apache Heron介绍 101 Heron架构 102 Heron topology架构 103 集成Apache Kafka与Apache Storm - Java 104 示 例 105 集成Apache Kafka与Apache Storm - Scala 110 用例使用Storm、Kafka和Hive处理日志 114 生产者 118 生产者代码 119 欺诈IP查找 122 Storm应用程序 123 运行项目 132 总 结 133 第7章 使用Kafka与 Confluent Platform 134 Confluent Platform介绍 135 深入Confluent Platform架构 136 理解Kafka Connect 和 Kafka Stream 139 Kafka Streams 139 使用Schema Registry与Avro交互 140 将Kafka数据移动到HDFS 142 Camus 142 运行Camus 143 Gobblin 144 Gobblin架构 144 Kafka Connect 146 Flume 147 总 结 150 第8章 使用Kafka构建ETL管道 151 在ETL管道中使用Kafka 151 介绍Kafka Connect 153 深入研究Kafka Connect 154 介绍使用Kafka Connect示例 155 Kafka Connect常见的用例 159 总 结 160 第9章 使用Kafka Streams 构建流应用程序 161 介绍Kafka Streams 161 在流处理中使用Kafka 162 Kafka Stream轻量级流处理库 163 Kafka Stream架构 164 集成框架的优势 166 理解Tables和Streams 167 Maven依赖 167 Kafka Stream单词计数 168 KTable 170 Kafka Stream使用案例 171 Kafka Streams的Maven依赖 171 reader属性 172 IP记录生产者 173 IP查询服务 176 欺诈检测应用程序 177 总 结 179 第10章 Kafka集群部署 180 Kafka集群的内部结构 180 Zookeeper角色 181 复 制 182 元数据(Metadata)请求处理 184 生产者(Producer)请求处理 184 消费者(Consumer)请求处理 185 容量规划 186 容量规划的目标 186 复制因子 186 内 存 187 硬盘驱动器 187 网 络 188 CPU 188 Kafka单集群部署 189 Kafka多集群部署 190 退役brokers 192 数据迁移 192 总 结 193 第11章 在大数据应用中使用Kafka 194 管理Kafka的高容量 195 适当的硬件选择 195 生产者读取和消费者写入的选择 197 Kafka消息传递语义 198 至少一次传递 199 最多一次传递 202 正好一次传递 203 大数据和Kafka常见的使用模式 204 Kafka和数据治理 206 报警和监控 207 有用的Kafka指标 208 Kafka生产者指标 208 Kafka broker指标 209 Kafka消费者指标 209 总 结 210 第12章 Kafka安全 211 Kafka安全的概述 211 SSL有线加密 212 Kafka启用SSL的步骤 213 为Kafka broker配置SSL 214 为Kafka客户端配置SSL 214 Kerberos SASL认证 215 在Kafka中启用SASL/GSSAPI的步骤 217 为Kafka broker配置SASL 217 为Kafka客户端配置SASL―生产者和消费者 219 理解ACL和授权 220 常见的ACL操作 221 ACLs列表 222 Zookeeper身份验证 223 Apache Ranger授权 224 为Ranger添加Kafka服务 224 添加策略(policies) 225 最佳实践 227 总 结 229 第13章 流应用程序设计的考虑 230 延迟和吞吐量 231 数据和状态的持久性 232 数据源 232 外部数据查询 233 数据格式 233 数据序列化 234 并行度 234 无序的事件 235 消息处理语义 235 总 结 236 |