本书针对Flink 1.11版本和Alink 1.2版本,采用“知识点+实例”的形式编写,包括47个基于知识点的实例和1个综合项目实例。
第1章对大数据和人工智能进行初步介绍;第2章用一个实例总览Flink的关键知识点;第3~5章介绍Flink的架构、开发基础和转换算子;第6、7、10、11章深入讲解4种开发Flink应用程序的API;第8、9章讲解操作Flink状态(计算和容错)的状态处理器API和用于处理复杂事件(异常检测、反欺诈、风险控制)的CEP库;第12章讲解Flink如何与其他外部系统集成,并实现Flink与Kafka的集成;第13章介绍机器学习的基础知识;第14章讲解机器学习框架Alink的知识和实战应用;第15章是项目实战,使用大数据和机器学习技术实现一个广告推荐系统(包含离线训练、在线训练、实时预测和在线服务)。
本书可以作为具备Java基础的开发人员、大数据领域从业人员的参考用书。阅读本书的读者不需要具备高等数学知识和人工智能的底层算法知识。
-版本较新:针对Flink 1.11版本和Alink 1.2版本。
-体例科学:采用“知识点+实例”的形式编写。
-实例丰富:47个基础实例 + 1个项目实例。
-跨界整合:①讲解了4种开发Flink应用程序的API,即DataSet API、DataStream API、Table API和SQL相关知识;②讲解了状态处理器API、复杂事件处理库,以及常用的消息中间件Kafka;③讲解了大数据和人工智能的结合,以及机器学习框架Alink。
-编排讲究:本书涉及的术语尽量做到有迹可循,每一个术语都尽可能在前面的章节中有所描述。章节递进关系清楚,内容顺序合理,从头到尾逻辑连贯。
龙中华
10多年来一直在某一线互联网公司担任技术负责人。目前带领多个研发团队,承担系统的需求分析、架构设计、项目管理,以及技术团队管理和培训等职责。
为了满足企业大数据和人工智能团队的培训需求,作者编写了大量相关的培训文档,但是这些文档主要是针对临时需求制作的,内容较多,整体上较为零散,不利于企业新同事的系统化学习。另外,官方文档虽然编写得很好,但知识点的递进关系并不理想,并且晦涩难懂。因此,作者整理了这些培训文档,并且反复推敲章节的递进关系,以及知识点的串联方式、知识点与实例的实用性,最终完成了本书的编写。
本书特色
版本较新:针对Flink 1.11版本和Alink 1.2版本。
体例科学:采用“知识点+实例”的形式编写。
实例丰富:47个基础实例 + 1个项目实例。
跨界整合:①讲解了4种开发Flink应用程序的API,即DataSet API、DataStream API、Table API和SQL相关知识;②讲解了状态处理器API、复杂事件处理库,以及常用的消息中间件Kafka;③讲解了大数据和人工智能的结合,以及机器学习框架Alink。
编排讲究:本书涉及的术语尽量做到有迹可循,每一个术语都尽可能在前面的章节中有所描述。章节递进关系清楚,内容顺序合理,从头到尾逻辑连贯。
适合读者
本书是否适合你,取决于你之前的知识、经验储备和学习目标。作者建议读者根据本书目录来进行判断,阅读本书的读者不需要具备大数据理论知识,也不需要懂得Hadoop、Spark、Storm等大数据领域的知识,但是需要具备一定的Java语言开发基础(或者至少使用过一种开发语言)。
本书编写环境
Flink版本:1.11。
Alink版本:1.2(基于Flink 1.11)。
开发工具:IntelliJ IDEA付费版,以及社区版。
JDK版本:8u211。
Maven版本:3.6.1。
Zookeeper版本:3.6.1。
Kafka版本:2.6.0(基于Scala 2.12)。
MySQL:8.0.21.0(需要支持Binlog)。
致谢
感谢Flink社区、Flink中文社区开源贡献者,以及Alink开发团队和开源贡献者的奉献。Flink和Alink的官方网站提供了丰富的文档和注释详尽的开源代码,作者在编写本书的过程中参考了很多相关的文档。
大数据领域、Flink和Alink技术博大精深,由于本书篇幅有限,作者的精力和技术也有限,因此书中难免存在不足之处,敬请广大读者批评指正。联系作者请发邮件至363694485@qq.com,或者加入本书讨论QQ群(714196947)。
龙中华
2020年12月
无耻,直接贴官网的文档内容
11