分类

编程工具

Apache Flink(流处理框架)

Apache Flink(流处理框架) 1.6.0 官方版

大小:15.6 MB

语言:英文系统:WinXP, Win7, Win8, Win10, WinAll

类别:编程工具时间:2018-08-20

  Apache Flink是一款流处理框架,当您在设置流程的时候可以将这款软件部署到你的开发环境中使用,让您可以更好设置流程模块,提供流和批处理分析、数据管道和ETL、复杂的后期数据处理、SQL对流和批处理数据等多种功能,您可以将其灵活的部署到自己的软件中,也可以部署到任何扩展架构使用;Apache Flink可以集成到多款软件上开发,让您的软件具有流处理功能,新增对 state TTL 的原生支持,需要的朋友赶快下载吧!

Apache Flink(流处理框架) 1.6.0 官方版

软件功能

  *流优先运行时,支持批处理和数据流程序

  *优雅流畅的Java和Scala api

  *同时支持高吞吐量和低事件延迟的运行时

  *基于*Dataflow模型

  *支持DataStream API中的事件时间和无序*处理

  *灵活的窗口(时间,计数,会话,自定义触发器)跨越不同的时间语义(事件时间,处理时间)

  *精确一次处理保证*容错

  *流媒体节目的自然背压

  *用于图形处理(批处理)、机器学习(批处理)和复杂事件处理(流)的库

  *数据集(批处理)API中对迭代程序(BSP)的内置支持

  *自定义内存管理,用于在内存中和非核心数据处理算法之间进行高效和健壮的切换

  * Apache Hadoop MapReduce和Apache Storm的兼容性层

  *与YARN、HDFS、HBase和Apache Hadoop生态系统的其他组件集成

软件特色

  一致的检查点:Flink的恢复机制基于应用程序状态的一致检查点。如果出现故障,应用程序将重新启动,并从最新的检查点加载其状态。与可重新设置的流源相结合,这个特性可以保证一次完全的状态一致性。

  有效的检查点:如果应用程序保持tb级的状态,那么检查点应用程序的状态可能非常昂贵。Flink可以执行异步和增量检查点,以保持检查点对应用程序的延迟sla的影响非常小。

  端到端精确地一次:Flink为特定存储系统提供了事务接收器,可以保证数据只写一次,即使在出现故障的情况下也是如此。

  与集群管理器集成:Flink与集群管理器紧密集成,例如Hadoop YARN、Mesos或Kubernetes。当流程失败时,将自动启动一个新流程来接管其工作。

  高可用性设置:Flink具有高可用性模式,可以消除所有单点故障。ha模式基于Apache ZooKeeper,这是一种经过实战验证的可靠分布式协调服务

安装方法

  通过定期将检查点写入远程持久存储,可以实现容错。下图描述了传统应用程序架构和事件驱动应用程序之间的差异。

Apache Flink(流处理框架) 1.6.0 官方版

  下载并启动Flink

  Flink可在Linux,Mac OS X和Windows上运行。为了能够运行Flink,唯一的要求是安装一个有效的Java 8.x. Windows用户。

  您可以通过发出以下命令来检查Java的正确安装:

  java -version

  如果你有Java 8,输出将如下所示:

  java version "1.8.0_111"

  Java(TM) SE Runtime Environment (build 1.8.0_111-b14)

  Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)

  下载并解压缩

  1、从下载页面下载二进制文件。您可以选择任何您喜欢的Hadoop / Scala组合。如果您打算只使用本地文件系统,任何Hadoop版本都可以正常工作。

  2、转到下载目录。

  3、解压缩下载的存档。

  $ cd ~/Downloads # Go to download directory

  $ tar xzf flink-*.tgz # Unpack the downloaded archive

  $ cd flink-1.6.0

  启动本地Flink群集

  $ ./bin/start-cluster.sh # Start Flink

  Apache Flink支持流和批分析应用程序,如下图所示。

Apache Flink(流处理框架) 1.6.0 官方版

使用说明

  *注:Maven 3.3。x可以构建Flink,但不能正确地消除某些依赖。Maven 3.0.3正确地创建了库。

  要使用Java 8构建单元测试,请使用Java 8u51或更高版本,以防止在使用PowerMock runner.*的单元测试中出现故障

  下图描述了周期性ETL作业和连续数据管道之间的差异。

Apache Flink(流处理框架) 1.6.0 官方版

  #发展Flink

  Flink提交者使用IntelliJ思想来开发Flink代码基。

  我们推荐IntelliJ IDEA用于开发包含Scala代码的项目。

  IDE的最低要求是:

  支持Java和Scala(也是混合项目)

  使用Java和Scala支持Maven

  分层的api

  Flink提供了三个分层的api。每种API都在简洁和表达之间提供了不同的权衡,并针对不同的用例。

Apache Flink(流处理框架) 1.6.0 官方版

  IntelliJ IDEA

  IntelliJ IDE支持开箱即用的Maven,并为Scala开发提供了一个插件。

  * IntelliJ下载:[https://www.jetbrains.com/idea/](https://www.jetbrains.com/idea/)

  * IntelliJ Scala插件:[http://plugins.jetbrains.com/plugin/?id=1347](http://plugins.jetbrains.com/plugin/?id=1347)

  Flink通过定期和异步检查本地状态到持久存储,保证了在发生故障时的精确一次状态一致性。

Apache Flink(流处理框架) 1.6.0 官方版

  由于有界数据集总是可以排序的,所以处理有界流不需要有序的摄取。有界流的处理也称为批处理。

Apache Flink(流处理框架) 1.6.0 官方版

更新日志

  新增对 state TTL 的原生支持。此功能允许在 state 到期后进行清理;

  继续完善 1.5.0 重构的 Flink 分布式架构,并简化容器设置;

  进一步改进 SQL CLI,使得针对大量数据源执行流式处理和批处理查询更容易;

  新增 StreamingFileSink ,以及对 ElasticSearch 6.x 的支持;

  优化 Timer Deletions 。

∨ 展开

网友评论

我要跟帖
取消
所有评论 共 0