一、Flink简述

Apache Flink是一个用于无界和有界数据流处理的分布式引擎,擅长有状态的流处理。Flink提供了低延迟、高吞吐的特性,并支持事件驱动。与Spark Streaming相比,Flink具有流式数据模型和更高效的执行架构。通过实例展示了如何使用Flink进行WordCount和监听端口数据处理。
摘要由CSDN通过智能技术生成

Flink简介


1、Flink是什么

Apache Flink 是一个框架分布式处理引擎,用于对无界有界数据流进行状态计算。

2、Flink可以做什么

  1. 可实现有状态流处理应用程序。它以容错的方式有效地大规模运行这些应用程序。
  2. 可以对数据集采取以流的形式处理,而区别于hive(mapreduce)和spark的批处理。

2.1、数据处理架构有哪些

数据处理架构分为:事务处理(OLTP)和分析处理(OLAP)两种。

2.1.1、 联机事务处理(OLTP)

On-Line Transaction Processing,一般指高可用的在线系统,DQL次数频繁。
OLTP是传统的关系型数据库的主要应用,主要基本的、日常的事务处理,类似常用的APP(淘宝,天猫对数据库进行频繁的增删改查操作)。
常见的事务处理框架:MySQL、SQLServer、Oracle、PostgreSQL
特点:

  1. 可以及时的处理输入的数据,并及时的给出应答,响应。
  2. 可以支持大量的用户进行访问操作。类似常见的App中的大量用户对数据库进行频繁增删改查的操作。
  3. 遵循ACID,事务

OLTP事务的示例包括:

  • 网上银行业务
  • 在线购买书籍
  • 预订机票
  • 发送短信
  • 订单输入
  • 电话推销员输入电话调查结果
  • 呼叫中心工作人员查看和更新​​客户的详细信息
2.1.2、 联机分析处理(OLAP)

Online Analytical Processing,有时候也叫DSS决策支持系统,通常指数据仓库。
OLAP(在线分析处理) 是许多商业智能(BI) 应用程序背后的技术 。OLAP是一项强大的数据发现技术,包括无限制报告查看功能,复杂的分析计算功能以及预测性“假设情况”(预算,预测)计划。,OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果,多用于领导,上级做分析做决策的依赖。

常见的事务处理框架:Hive、Presto、Kylin、Impala、Sparksql、Druid、Clickhouse,
还有:Hawq、Greeplum等。

3、Flink的特点(为什么使用)

3.1、flink特点

特点:

  • 基于流的世界观
  • 传统的数据架构是基于有限的数据集的
  • 低延迟(Storm也支持)
  • 高吞吐,在压力下保持正确(Spark Streaming也支持)
  • 时间正确/语义化窗口,操作简单,表现力好
  • 事件驱动(Event-Driven)(Flink主要特点)

3.2、flink与Spark Streaming区别

数据模型

  • spark 采用 RDD 模型,spark streaming 的 DStream 实际上也就是一组组小批数据 RDD 的集合
  • flink 基本数据模型是数据流,以及事件(Event)序列

运行时架构

  • spark 是批计算,将 DAG 划分为不同的 stage,一个完成后才可以计算下一个
  • flink 是标准的流执行模式,一个事件在一个节点处理完后可以直接发往下一个节点进行处理

4、Flink程序使用案例WordCount

(1)、对字符串的处理

package com.licx;

import org.apache.flink.api.common.functions.FlatMapFunction;
import org.apache.flink.api.common.functions.ReduceFunction;
import org.apache.flink.streaming.api.datastream.DataStreamSource;
import org.apache.flink.streaming.api.datastream.KeyedStream;
import org.apache.flink.streaming.api.datastream.SingleOutputStreamOperator;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
import org.apache.flink.util.Collector;

/**
 * @Version 1.0
 * @Author:lichengxin
 * @Date:2020/11/30
 * @Package_name:com.licx
 */
public class WordCountWithWord {
   
    public static void main
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值