flink是什么

Apache Flink是一个高性能、高吞吐量的开源流处理框架,用于在无界和有界数据流上进行有状态的计算。它设计用于在分布式环境中进行大规模的数据处理,且能够同时处理批处理和流处理任务。

Flink通过实现Google Dataflow流式计算模型,实现了高吞吐、低延迟、高性能的实时流式计算框架。Flink的核心是一个流式的数据处理引擎,它提供了数据流(DataStream)和批处理数据集(DataSet)的统一处理,这意味着用户可以无缝地在流和批处理之间切换,从而满足不同的业务需求。

Flink支持高度容错的状态管理,即使在系统停机或者异常的情况下,也能通过分布式快照技术(Checkpoints)实现状态的持久化维护,确保计算出正确的结果。此外,Flink的状态一致性保证也使得它在处理复杂、高要求的数据流任务时表现出色。

Flink的系统由JobManager和TaskManager两个核心组件组成。JobManager负责整个Flink集群任务的调度以及资源的管理,从客户端获取提交的任务,并根据集群中TaskManager上TaskSlot的使用情况,为提交的应用分配相应的TaskSlot资源并命令TaskManager启动从客户端中获取的应用。TaskManager则负责执行具体的任务,并在任务执行过程中进行数据的处理和状态的维护。

在API层面,Flink提供了多种抽象层次的API以便用户编写分布式任务。例如,DataSet API用于对静态数据进行批处理操作,将静态数据抽象成分布式的数据集;DataStream API则用于对数据流进行流处理操作,将流式的数据抽象成分布式的数据流;Table API则对结构化数据进行查询操作,将结构化数据抽象成关系表,通过类SQL的DSL对关系表进行各种查询操作。此外,Flink还提供了机器学习库Flink ML,提供了机器学习Pipelines API并实现了多种机器学习算法。

Apache Flink的发展历史可以追溯到其前身Stratosphere项目。Stratosphere是一个研究性项目,旨在开发下一代大数据分析平台。该项目由柏林工业大学、Humboldt大学和Hasso Plattner研究所共同推动,并由柏林理工大学的教授沃克尔·马尔科(Volker Markl)领衔开发。在2010年至2014年期间,这个项目得到了欧洲一些大学的共同参与和研究。

随着项目的进展,Stratosphere在2014年4月16日被Apache Software Foundation接纳为孵化项目,并更名为Apache Flink。这一变化标志着Flink正式进入了开源社区,并开始得到更广泛的关注和发展。同年8月,Flink的第一个版本0.6正式发布,与此同时,Flink的几位核心开发者创办了Data Artisans公司。

在随后的几年里,Flink经历了快速的发展。2014年12月,Flink项目成功完成孵化,成为Apache的顶级项目。这标志着Flink在技术和社区方面都已经达到了成熟和稳定的水平。

随着版本的迭代,Flink的功能不断增强。例如,Flink 1.x系列版本开始支持流处理,这一功能迅速引发了业界的广泛关注。而在2019年,Flink 1.9版本的发布进一步扩大了其使用范围,引入了如Blink SQL引擎和PyFlink等重要特性。此外,长期对Flink投入研发的阿里巴巴在2019年以9000万欧元的价格收购了Data Artisans公司,这也进一步推动了Flink的发展。

在架构方面,Flink的设计使其可以在local、yarn以及cloud上运行,具有高度的灵活性和可扩展性。其核心组件包括JobManager和TaskManager,它们协同工作以实现数据流的处理和状态管理。同时,Flink也提供了多种抽象层次的API,如DataStream API和Table API,以便用户能够更方便地编写分布式任务。

总的来说,Apache Flink的发展历史是一个不断演进和完善的过程。从Stratosphere项目的起源,到成为Apache的顶级项目,再到不断引入新的特性和优化性能,Flink已经成为了大数据处理领域的重要工具之一。

相关推荐
P1Browser8 小时前
账号触发平台安全审核?拆解标准申诉流程与材料清单
大数据·人工智能·安全·多账号管理·指纹浏览器·账户安全·运营合规
云南新人和数采集团14 小时前
云南靠谱软件开发公司选型指南:以昆明新腾科技为例
大数据·人工智能·科技
AllData公司负责人15 小时前
AI大模型数据开发底座系列说明书:AllData集成DB-GPT开源项目建设 AI 多模态分析底座,涵盖模态解析/智能大屏/MCP 扩展!
大数据·数据库·人工智能·gpt·数据采集·数据接入·模态解析
wno70418 小时前
常用的Git命令清单
大数据·git·elasticsearch
YIN_尹1 天前
【git原理与使用】git基本操作及底层原理(二)
大数据·git·elasticsearch
武子康1 天前
H3-World 写了 CPU offload,为什么还不能保证塞进 48GB?
大数据·人工智能·深度学习
演艺大赏1 天前
Doris 数据导出实战:SeaTunnel、EXPORT 与 OUTFILE 性能对比及 9.5 亿行写入故障复盘
大数据
isfox2 天前
MapReduce 作业慢?别乱调参数,先找到瓶颈在哪
大数据
玩美数据2 天前
市场调研数据分析与数据集驱动的行业格局变革深度解析
大数据·人工智能
微订校园外卖系统2 天前
校园代取快递系统选型:现成系统与定制开发的技术核对项
大数据·运维·人工智能·外卖系统·本地生活·微订