Apache Kafka是1个时兴的分布式系统流服务平台,它当做消息队列或公司信息系统软件。它容许你公布和定阅纪录流,并且以试错的方法解决他们。
这书是应用Apache Kafka集成化别的互联网大数据小工具设计构思和搭建公司级流手机应用程序的综合性手册。它包含搭建该类手机应用程序的*实践活动,并处理了某些普遍的趣味性难题,比如怎样合理地应用Kafka来轻轻松松解决高容统计数据。这书最先详细介绍了信息系统软件种类,随后详解了Apache Kafka以及內部关键点。这书的其次一部分详细介绍了怎么使用各种各样架构和小工具(如Apache Spark、Apache Storm等)设计构思流手机应用程序。如果你把握了基本知识,人们将陪你了解Apache Kafka中更高級的定义,比如容积整体规划和安全系数。
到这书完毕时,你将把握应用Apache Kafka时需必须的全部信息内容,并应用它设计构思高效率的流统计数据运用。Apache Kafka是1个时兴的分布式系统流服务平台,当做消息队列或公司消息传递系统软件。它用于公布和定阅数据流分析,并在产生不正确时以试错方法解决他们。 这书共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