大数据分析引擎Apache Flink

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介:

Apache Flink是一个高效、分布式、基于Java实现的通用大数据分析引擎,它具有分布式 MapReduce一类平台的高效性、灵活性和扩展性以及并行数据库查询优化方案,它支持批量和基于流的数据分析,且提供了基于Java和Scala的API。从Apache官方博客中得知,Flink已于近日升级成为Apache基金会的顶级项目。Flink项目的副总裁对此评论到:

Flink能够成为基金会的顶级项目,自己感到非常高兴。自己认为社区的驱动将是Flink成长的最好保证。Flink逐渐的成长以及众多新人加入该社区真是一件大好事。

从Flink官网得知,其具有如下主要特征:

1. 快速

Flink利用基于内存的数据流并将迭代处理算法深度集成到了系统的运行时中,这就使得系统能够以极快的速度来处理数据密集型和迭代任务。

2. 可靠性和扩展性

当服务器内存被耗尽时,Flink也能够很好的运行,这是因为Flink包含自己的内存管理组件、序列化框架和类型推理引擎。

3. 表现力

利用Java或者Scala语言能够编写出漂亮、类型安全和可为核心的代码,并能够在集群上运行所写程序。开发者可以在无需额外处理就使用Java和Scala数据类型

4. 易用性

在无需进行任何配置的情况下,Flink内置的优化器就能够以最高效的方式在各种环境中执行程序。此外,Flink只需要三个命令就可以运行在Hadoop的新MapReduce框架Yarn上,

5. 完全兼容Hadoop

Flink支持所有的Hadoop所有的输入/输出格式和数据类型,这就使得开发者无需做任何修改就能够利用Flink运行历史遗留的MapReduce操作

Flink主要包括基于Java和Scala的用于批量和基于流数据分析的API、优化器和具有自定义内存管理功能的分布式运行时等,其主要架构如下:

 摘自 http://www.infoq.com/cn/news/2015/01/big-data-apache-flink-project

 

 

如今流处理越来越流行,例如Apache Kafka, Apache Samza, Apache Storm, Apache Spark的Streaming模块等等,云服务还有类似Google Cloud Dataflow。Apache Flink作为一个新的流处理系统,其特点是:

1. 低延迟的流处理器

2.丰富的API能够帮助程序员快速开发流数据应用

3.灵活的操作状态和流窗口

4.高效的流与数据的容错很多公司正在从传统的批处理架构迁移到实时流架构,在分布式系统如HDFS中静态文件和关系数据库在通过事件流得到增强,使用批处理实现的工作任务能够在流处理中以更低延迟实现。



这种转型有许多方式,首先,许多数据集和用例都是基于事件的(比如机器日志等),其次流处理在某种程度上可以处理更复杂的工作任务,流处理原则上能够以低延时执行大部分批处理的工作任务,这样,当流处理能够处理同样的工作任务时,几乎没有理由再选择使用hadoop这样的批处理框架了。最后,一些新的应用类型诸如处理敏感数据经常需要持续查询,这些应用只能使用流架构实现。一个典型的流架构由下面三个组件组成:


 

1. 一个模块组件是从各种数据源收集事件流

2. 一个模块组件集成各种流,使它们可用于直接消费。

3.一个模块组件用来分析消费这些流数据

第一步是从各种数据源收集事件,事件来自于数据库,机器产生日志,事件传感器等,这些事件需要清理 组织化到一个中心。

第二步,在一个中心集成各种流,典型工具如Apache Kafka,Kafka提供一个broker功能,以失败容错的高可靠性用来收集流 日志或缓冲数据,以及分发到各种对不同流感兴趣的消费者那里进行分析。

第三步,对流进行真正的分析,比如创建计数器 实现聚合,Map/Reduce之类计算,将各种流Join一起分析等等,提供了数据分析所需的一步到位的高级编程。Apache Flink正是这步实现。



Flink能够既用来进行批处理又能用来进行流处理,也就是综合了Hadoop和Storm或Spark Streaming两者优点,需要了解详情见:Real-time stream processing: The next step for Apa

摘自 http://www.jdon.com/47283

 

Flink 的其他文档 https://www.ibm.com/developerworks/cn/opensource/os-cn-apache-flink/

 http://flink.apache.org/introduction.html


本文转自茄子_2008博客园博客,原文链接:http://www.cnblogs.com/xd502djj/p/6930007.html,如需转载请自行联系原作者。


相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
目录
相关文章
|
28天前
|
分布式计算 大数据 Apache
ClickHouse与大数据生态集成:Spark & Flink 实战
【10月更文挑战第26天】在当今这个数据爆炸的时代,能够高效地处理和分析海量数据成为了企业和组织提升竞争力的关键。作为一款高性能的列式数据库系统,ClickHouse 在大数据分析领域展现出了卓越的能力。然而,为了充分利用ClickHouse的优势,将其与现有的大数据处理框架(如Apache Spark和Apache Flink)进行集成变得尤为重要。本文将从我个人的角度出发,探讨如何通过这些技术的结合,实现对大规模数据的实时处理和分析。
83 2
ClickHouse与大数据生态集成:Spark & Flink 实战
|
2月前
|
SQL Java API
Apache Flink 2.0-preview released
Apache Flink 社区正积极筹备 Flink 2.0 的发布,这是自 Flink 1.0 发布以来的首个重大更新。Flink 2.0 将引入多项激动人心的功能和改进,包括存算分离状态管理、物化表、批作业自适应执行等,同时也包含了一些不兼容的变更。目前提供的预览版旨在让用户提前尝试新功能并收集反馈,但不建议在生产环境中使用。
691 13
Apache Flink 2.0-preview released
|
2月前
|
存储 缓存 算法
分布式锁服务深度解析:以Apache Flink的Checkpointing机制为例
【10月更文挑战第7天】在分布式系统中,多个进程或节点可能需要同时访问和操作共享资源。为了确保数据的一致性和系统的稳定性,我们需要一种机制来协调这些进程或节点的访问,避免并发冲突和竞态条件。分布式锁服务正是为此而生的一种解决方案。它通过在网络环境中实现锁机制,确保同一时间只有一个进程或节点能够访问和操作共享资源。
78 3
|
29天前
|
分布式计算 大数据 OLAP
AnalyticDB与大数据生态集成:Spark & Flink
【10月更文挑战第25天】在大数据时代,实时数据处理和分析变得越来越重要。AnalyticDB(ADB)是阿里云推出的一款完全托管的实时数据仓库服务,支持PB级数据的实时分析。为了充分发挥AnalyticDB的潜力,将其与大数据处理工具如Apache Spark和Apache Flink集成是非常必要的。本文将从我个人的角度出发,分享如何将AnalyticDB与Spark和Flink集成,构建端到端的大数据处理流水线,实现数据的实时分析和处理。
54 1
zdl
|
15天前
|
消息中间件 运维 大数据
大数据实时计算产品的对比测评:实时计算Flink版 VS 自建Flink集群
本文介绍了实时计算Flink版与自建Flink集群的对比,涵盖部署成本、性能表现、易用性和企业级能力等方面。实时计算Flink版作为全托管服务,显著降低了运维成本,提供了强大的集成能力和弹性扩展,特别适合中小型团队和业务波动大的场景。文中还提出了改进建议,并探讨了与其他产品的联动可能性。总结指出,实时计算Flink版在简化运维、降低成本和提升易用性方面表现出色,是大数据实时计算的优选方案。
zdl
75 21
|
2月前
|
分布式计算 大数据 Apache
利用.NET进行大数据处理:Apache Spark与.NET for Apache Spark
【10月更文挑战第15天】随着大数据成为企业决策和技术创新的关键驱动力,Apache Spark作为高效的大数据处理引擎,广受青睐。然而,.NET开发者面临使用Spark的门槛。本文介绍.NET for Apache Spark,展示如何通过C#和F#等.NET语言,结合Spark的强大功能进行大数据处理,简化开发流程并提升效率。示例代码演示了读取CSV文件及统计分析的基本操作,突显了.NET for Apache Spark的易用性和强大功能。
40 1
|
2月前
|
消息中间件 分布式计算 Kafka
大数据平台的毕业设计02:Spark与实时计算
大数据平台的毕业设计02:Spark与实时计算
|
2月前
|
数据挖掘 物联网 数据处理
深入探讨Apache Flink:实时数据流处理的强大框架
在数据驱动时代,企业需高效处理实时数据流。Apache Flink作为开源流处理框架,以其高性能和灵活性成为首选平台。本文详细介绍Flink的核心特性和应用场景,包括实时流处理、强大的状态管理、灵活的窗口机制及批处理兼容性。无论在实时数据分析、金融服务、物联网还是广告技术领域,Flink均展现出巨大潜力,是企业实时数据处理的理想选择。随着大数据需求增长,Flink将继续在数据处理领域发挥重要作用。
|
4月前
|
存储 消息中间件 Java
Apache Flink 实践问题之原生TM UI日志问题如何解决
Apache Flink 实践问题之原生TM UI日志问题如何解决
46 1
|
3月前
|
SQL 消息中间件 关系型数据库
Apache Doris Flink Connector 24.0.0 版本正式发布
该版本新增了对 Flink 1.20 的支持,并支持通过 Arrow Flight SQL 高速读取 Doris 中数据。

推荐镜像

更多