Apache Flink简介

Apache Flink简介


Apache Flink是一个可伸缩的开源批处理和流处理平台。其核心模块是一个数据流引擎,该引擎在分布式的流数据处理的基础上提供数据分发、交流、以及容错的功能,其架构图如下:

apache flink 架构图

该引擎包含如下APIs:
1. DataSet API for static data embedded in Java, Scala, and Python
2. DataStream API for unbounded streams embedded in Java and Scala, and
3. Table API with a SQL-like expression language embedded in Java and Scala.

Flink也包含了一些其他领域的组件:
1.Machine Learning library
2.Gelly, a graph processing API and library

Flink系统概览

Flink支持java和scala语言的数据处理API,有一个优化的分布式运行自定义内存管理。

Flink系统概览

Flink特点

1、Fast,Flink在运行时利用内存数据流和集成迭代处理,这样对于数据密集型计算和迭代计算变的很快

Flink Fast

grep
2、高可靠性和高伸缩性。Flink包含自己的内存管理组件,序列化组件和type inference组件。

3、优雅美观的API设计

workcount scala示例

case class Word (word: String, frequency: Int)
val counts = text
.flatMap {line => line.split(" ").map(
word => Word(word,1))}
.groupBy("word").sum("frequency"

Closure代码示例

case class Path (from: Long, to: Long)
val tc = edges.iterate(10) { paths: DataSet[Path] =>
    val next = paths
    .join(edges).where("to").equalTo("from") {
    (path, edge) => Path(path.from, edge.to)
    }
    .union(paths).distinct()
    next
}

4、可兼容Hadoop,可在YARN上运行

参考

Apache Flink

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。
本文原文出处: http://blog.csdn.net/bluishglc/article/details/45888279 严禁任何形式的转载,否则将委托CSDN官方维护权益! 如果你想让你手写的workflow.xml成功的倒入到Hue的Oozie Designer里,你需要注意如下几点: 关于chema的版本:oozie最高只能是0.4,hive-action最高只能是0.2, istcp-action最高只能是0.1!! 对于jobTracker和nameNode属性,hue的oozie des

数学之路-sas备忘(4) - 2015-06-05 10:06:38

5、excel文件读入   * 读入 EXCEL 文件到临时数据集 class1*; proc import OUT =work.class1 dbms =EXCEL REPLACE         DATAFILE = "J:\docs\ 机器学习第 3 版 \ 底稿 \src\sas\student_excel.xlsx" ;         SHEET = "student" ;         GETNAMES =YES; RUN ; * 显示数据 *; title " 学生数据 " ; proc
相似度计算map-reduce实现思路 输入: 1 f(1) 2 f(2) 3 f(3) 4 f(4)   mapper: 1,2 f(1) 1,3 f(1) 1,4 f(1) 1,2 f(2) 2,3 f(2) 2,4 f(2) 1,3 f(3) 2,3 f(3) 3,4 f(3) 1,4 f(4) 2,4 f(4) 3,4 f(4) reducer: 1,2 f(1) f(2) 1,3 f(1) f(3) 1,4 f(1) f(4) 2,3 f(2) f(3) 2,4 f(2) f(4) 3,4 f(
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/45769461 1.通过远程工具登陆到linux后,所在的位置是当前登录用户的家目录(home directory)。 2.家目录的符号用~表示。 3.linux的文件系统是一个树结构。   linux文件系统的树根成为根目录,使用符号"/"表示。   linux文件系统中使用符号".."表示上级目录。   linux文件系统中使用符号"."表示当前目录。   linux文件系统中,如果文件

hadoop伪分布模式搭建(下) - 2015-06-05 10:06:26

搭建伪分布式是在一台机器上模拟分布式部署,方便学习和调试。 1.解压hadoop文件 下载好的hadoop ,我们可以通过使用WinSCP 把压缩包软件把它 从宿主机复制移动到linux 的/usr/local 目录下。 解压缩文件,并重命名为hadoop,方便使用。重命名后这时,hadoop 目录的完整路径是“/usr/local/hadoop” 设置环境变量HADOOP_HOME,修改文件“/etc/profile” 修改环境变量后,执行source 命令,使配置立即生效。这里设置了一个别名cdha,
    一、基本原理         存在一个样本数据集合(也称训练样本集),并且样本集中每个数据都存在标签。输入没有标签的新数据后,将新数据的每个特征与样本集中数据对应的特征进行比较,然后算法提取样本集中特征最相似数据(最近邻)的分类标签。 我们一般只选择样本集中前k(k通常是不大于20的整数)个最相似的数据,最后选择k个最相似数据中出现次数最多的分类,作为新数据的分类。 二、算法流程         1)计算已知类别数据集中的点与当前点之间的距离;         2)按照距离递增次序排序;     

在 Mac OS X 系统里使用 Docker - 2015-06-05 09:06:20

目前的 Docker实现是建立在 Linux CGroup 等技术之上,因此无法在 MacOS X上原生使用(不过都折腾libcontainer了,不久应该会很快会有原生版本了吧)。需要建立一个 Linux虚拟机,然后在虚拟机内的 Linux上安装使用。为了简化整个安装使用,boot2docker.io提供了一个完全自包含的安装包,它会: 检测 Virtual Box 虚拟机软件,如果没有则安装之,有则启动运行之。 创建名为   boot2dock-vm 的 headless vm ,这个 vm 非常精简

Strom实时计算--简述 - 2015-06-05 09:06:16

Strom 和 hadoop 的区别:   全量数据处理使用的大多是鼎鼎大名的 hadoop 或者 hive ,作为一个批处理系统, hadoop 以其吞吐量大、自动容错等优点,在海量数据处理上 得到了广泛的使用。但是, hadoop 不擅长实时计算。这时需要 strom 实时计算系统 Strom 架构 Storm 集群由一个主节点和多个工作节点组成。主节点运行了一个名为“ Nimbus ”的守护进程,用于分配代码、布置任务及故障检测。每个工作节点都运行了一个名为“ Supervisor ”的守护进程,用
本文基于 Centos6.x + CDH5.x Oozie是什么 简单的说Oozie是一个工作流引擎。只不过它是一个基于Hadoop的工作流引擎,在实际工作中,遇到对数据进行一连串的操作的时候很实用,不需要自己写一些处理代码了,只需要定义好各个action,然后把他们串在一个工作流里面就可以自动执行了。对于大数据的分析工作非常有用 安装Oozie Oozie分为服务端和客户端,我现在选择host1作为服务端,host2作为客户端。 所以在host1上运行 yum install oozie 在host2上

CDH使用之CM 5.3.x安装 - 2015-06-04 20:06:03

CDH 使用之 CM 5.3.x 安装 前言: CM 全称 Cloudera Manager , Cloudera 开发公司的产品。其主要功能是对 CDH 集群进行监控,大大改善原生 ApacheHadoop 的安装、配置复杂和需要使用第三方开源的监控工具所带来的诸多问题。其中, CDH 是 Cloudera 公司的开源产品,可以不依靠 CM 独立安装。 CM 有 free 版本,提供 60 天在收费版中才能使用的高级功能的免费使用期限。本文 CM 安装基于 CentOS 6.5 ,各个系统版本之前可能存