#1.FLINK的优点1.批流统一同一套代码同一个SQL可以跑批处理也可以跑流处理。2.性能卓越3.规模计算支持水平扩展架构支持超大状态与增量检查点机制状态:计算过程中的数据或者数据本身。大公司情况每天处理数万亿的事件(数据)应用维护几个TB大小的状态应用在数千个CPU核心上运行。4.生态兼容支持与yarn集成支持与kubernetes集成支持单机模式运行5.高容错故障自动重试一致性检查点保证故障现场下精确一次的状态一致性3.全新版本基于最新Flink1.17.0版本新source接口用法新sink接口用法通用增量检查点changelog导入依赖的变化#2.Flink是什么Flink的官方主页地址: https://flink.apache.orgFlink的核心目标是“数据流上的有状态计算”(Stateful Computations over Data Streams)具体说明:apache flink 是一个框架 和分布式处理引擎用于对无界和有界数据流将那些有状态计算。事件驱动型应用流处理的流水线流批数据分析有界和无界流1.无界数据流有定义流的开始但没有定义流的结束他们会无休止的产生数据无界流的数据必须持续处理即数据被摄取后需要立即处理。我们不能等到所有数据都到达后再处理因为输入是无限的。2.有界数据流有定义流的开始也有定义流的结束。有界流可以在摄取所有数据后再进行计算有界流所有数据可以被排序所以并不需要有序摄取。有界流处理通常被称为批处理。有状态流处理把流处理需要的额外数据保存成一个状态,然后针对这条数据进行处理并且更新状态。这就是所谓的有状态的流处理状态在内存中:优点速度快缺点:可靠性差。#3.Flink的特点我们处理数据的目标是:低延迟高吞吐结果的准确性和良好的容错性。flink主要特点如下:高吞吐和低延迟:每秒处理数百万个事件毫秒级延迟。每秒上亿条数据。结果的准确性:flink提供了事件事件(event-time)和处理时间(processing-time)定义。对于乱序事件流事件时间定义仍然能提供一致且准确的结果。精准一次(exactly-once)的状态一致性保证Flink可以连接到最常用的存储系统:如kafka,Hive,JDBC,HDFS,Redis等高可用:本身高可用的设置加上与K8SYARN和Mesos的紧密集成再加上从故障中快速恢复和动态扩展任务的能力Flink能做到以极少的停机时间7*24全天候运行。Flink vs SparkStreamingSpark以批处理为根本。spark数据模型:spark 采用 RDD模型sparkStreaming的DStream 实际上也就是一组组小批数据RDD的集合。spark运行时架构:spark是批计算将DAG划分为不同的stage,一个完成后才可以计算下一个。Flink以流处理为根本。Flink数据模型:Flink基本数据模型是数据流以及事件(Event)序列。flink运行时机构:flink是标准的流执行模式一个事件再一个节点处理完后可以直接发往下一个节点进行处理。