作者:禅与计算机程序设计艺术
1.简介
2017年4月,Apache 基金会宣布开源 Apache Flink,它是一个分布式计算框架,可以有效地进行流处理、批处理、机器学习、图处理等多种应用场景的数据分析工作。它的架构和功能都是在快速发展中,相信随着云计算和大数据领域的蓬勃发展,Flink 将成为继 Hadoop MapReduce、Storm 更加值得关注的计算引擎之一。然而,当 Flink 刚推出时,很多公司和开发者都认为它是一个华而不实的产物,甚至声称它只是 Kafka 或 Storm 的改良版本。本文将详细阐述 Flink 的理论基础、使用方式、架构设计及其未来的发展方向。
2.基本概念术语说明
- 定义与简介
- Flink 是什么? Flink 是由 Apache 基金会发起的一个开源的分布式计算框架。它提供一个支持流处理、批处理、机器学习、图处理等多种应用场景的数据分析工作的分布式环境。它最初由 Storm 发明,2015 年贡献给了 Apache 基金会。目前,Apache Flink 在 GitHub 上已经超过了 3万个 star,同时也在国内得到广泛关注。
- Flink 架构与特点 Flink 的架构分为 JobManager 和 TaskManager 两大模块。JobManager 是任务调度器,负责接收用户提交的作业并分配到各个节点上执行。TaskManager 是运行在每个节点上的独立进程,负责接收 JobManager 分配的任务并执行。在此基础上,Flink 提供丰富的 API 来实现各种高级特性,比如窗口计算、状态管理、流处理、批处理、机器学习等。 Flink 的主要特点如下:
- 支持高吞吐量和低延迟的事件驱动型流处理:基于
版权归原作者 禅与计算机程序设计艺术 所有, 如有侵权,请联系我们删除。