大数据分析引擎Apache Flink
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
大数据分析引擎Apache Flink的更多相关文章
- 新一代大数据处理引擎 Apache Flink
https://www.ibm.com/developerworks/cn/opensource/os-cn-apache-flink/index.html 大数据计算引擎的发展 这几年大数据的飞速发 ...
- 《开源大数据分析引擎Impala实战》目录
当当网图书信息: http://product.dangdang.com/23648533.html <开源大数据分析引擎Impala实战>目录 第1章 Impala概述.安装与配置.. ...
- Windows 上用IntelliJ Idea调试百度大数据分析框架Apache Doris FE
A. 环境准备 1. 安装jdk1.8+, Intelij IDEA 2. linux上编译好fe前端代码,主要目的是获取自动生成的代码,加入到前段工程里面去用于在idea中编译fe工程.具体编译请参 ...
- Impala:新一代开源大数据分析引擎
Impala架构分析 Impala是Cloudera公司主导开发的新型查询系统,它提供SQL语义,能查询存储在Hadoop的HDFS和HBase中的PB级大数据.已有的Hive系统虽然也提供了SQL语 ...
- Impala:新一代开源大数据分析引擎--转载
原文地址:http://www.parallellabs.com/2013/08/25/impala-big-data-analytics/ 文 / 耿益锋 陈冠诚 大数据处理是云计算中非常重要的问题 ...
- 详细解读大数据分析引擎Pig&PigLatin语句
Pig 一.Pig的介绍: Pig由Yahoo开发,主要应用于数据分析,Twitter公司大量使用Pig处理海量数据,Pig之所以是数据分析引擎,是因为Pig相当于一个翻译器,将PigLatin语句翻 ...
- Spark入门,概述,部署,以及学习(Spark是一种快速、通用、可扩展的大数据分析引擎)
1:Spark的官方网址:http://spark.apache.org/ Spark生态系统已经发展成为一个包含多个子项目的集合,其中包含SparkSQL.Spark Streaming.Graph ...
- Esri大数据分析引擎GeoAnalytics Server部署经历
系统架构 Base WebGIS 4Cores 16GB Spatiotemporal Data Store 32GB SSD Disk 足够大的空间 GA Server 4Cores 16GB 足够 ...
- 国人之光:大数据分析神器Apache Kylin
一.简介 Apache Kylin是一个开源的.分布式的分析型数据仓库,提供Hadoop/Spark 之上的 SQL 查询接口及多维分析(OLAP)能力以支持超大规模数据,最初由 eBay 开发并贡献 ...
随机推荐
- C语言调用Python 混合编程
导语 Python有很多库,Qt用来编写界面,自然产生C++调用Python的需求.一路摸索,充满艰辛 添加头文件搜索路径,导入静态库 我的python头文件搜索路径:C:\Python27amd64 ...
- commons-beanutils使用介绍
commons-beanutils是Apache开源组织提供的用于操作JAVA BEAN的工具包.使用commons-beanutils,我们可以很方便的对bean对象的属性进行操作.今天为大家介绍一 ...
- React Native组件之BackAndroid !安卓手机的物理返回键的使用
ok!在安卓手机上,当我们用物理返回键的时候,会以一次性的将程序退出来,这样是很不好的体验,所以就需要使用RN的物理返回键组件:BackAndroid,其原理也就是 分析路由,然后pop()这样! o ...
- 删除node_modules文件
删除node_modules文件夹报错:路径太长,无法删除. npm install rimraf -g rimraf node_modules
- zzulioj 1734 堆
比赛的时候不会写,想不到DFS,一直以为需要二叉树或者建堆什么的,也没学,后来才明白这个题 代码: #include <cstdio> #include <cstring> # ...
- prometheus的agent 二次开发代码参考
import com.codahale.metrics.MetricRegistry;import io.prometheus.client.CollectorRegistry;import io.p ...
- 随机--相关(Fisher_Yates算法)
Fisher_Yates算法 void ShuffleArray_Fisher_Yates(char* arr, int len) { int i = len, j; char t ...
- 滑动验证 和滑动图片验证JS
滑动验证 先放效果图 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...
- leecode第四十三题(字符串相乘)
class Solution { public: string multiply(string num1, string num2) { ";//特殊情况 ] == ] == ') retu ...
- 从flask视角理解angular(四)Route
app-routing.modules.ts import { NgModule } from '@angular/core'; import { RouterModule, Routes } fro ...