Flink从入门到放弃(入门篇1)-Flink是什么

Java如何使用实时流式计算处理? 最近如果拉过austin项目代码的同学,可能就会发现多了一个austin-stream模块。其实并不会意外,因为这一切都在计划当中进行。 这个模块主要是接入流式处理平台(flink),用于实时计算清洗数据给到业务以及系统维护者更方便去使用消息推送平台austin。 这篇文章主要来聊聊接入的背景以及我浅薄的经验吧 01、为什么流式处理平台 我在老东家有过处理数据相关的经验,也看到过站内广告「效果数据」的发展历程。 所谓效果数据,说白了则是商家在平台上投放了广告,我们需要给商家看到广告带来的效果,最核心的是「 阅读详情

戳更多文章:

1-Flink入门

2-本地环境搭建&构建第一个Flink应用

3-DataSet API

4-DataSteam API

5-集群部署

6-分布式缓存

7-重启策略

8-Flink中的窗口

9-Flink中的Time

Flink时间戳和水印

Broadcast广播变量

FlinkTable&SQL

Flink实战项目实时热销排行

Flink写入RedisSink

17-Flink消费Kafka写入Mysql

本文是例行介绍,熟悉的直接跳过 - 鲁迅

鲁迅: ...

大纲

入门篇:

image

放弃篇:

image

图片显示不了,戳这里:

https://github.com/wangzhiwubigdata/God-Of-BigData/blob/master/Flink

插个广告

  • 全网唯一一个从0开始帮助Java开发者转做大数据领域的公众号~

  • 公众号大数据技术与架构或者搜索import_bigdata关注,大数据学习路线最新更新,已经有很多小伙伴加入了~

image

Flink是什么

一句话概括

Apache Flink是一个面向分布式数据流处理和批量数据处理的开源计算平台,提供支持流处理和批处理两种类型应用的功能。

前身

Apache Flink 的前身是柏林理工大学一个研究性项目, 在 2014 被 Apache 孵化器所接受,然后迅速地成为了Apache Software Foundation的顶级项目之一。

特点

现有的开源计算方案,会把流处理和批处理作为两种不同的应用类型:流处理一般需要支持低延迟、Exactly-once保证,而批处理需要支持高吞吐、高效处理。
Flink是完全支持流处理,也就是说作为流处理看待时输入数据流是无界的;批处理被作为一种特殊的流处理,只是它的输入数据流被定义为有界的。

Flink组件栈

image

)

Deployment层

主要涉及了Flink的部署模式,Flink支持多种部署模式:本地、集群(Standalone/YARN)、云(GCE/EC2)

image

Runtime层

Runtime层提供了支持Flink计算的全部核心实现,比如:支持分布式Stream处理、JobGraph到ExecutionGraph的映射、调度等等,为上层API层提供基础服务

API层

API层主要实现了面向无界Stream的流处理和面向Batch的批处理API,其中面向流处理对应DataStream API,面向批处理对应DataSet API

Libaries层

  • 在API层之上构建的满足特定应用的实现计算框架,也分别对应于面向流处理和面向批处理两类

  • 面向流处理支持:CEP(复杂事件处理)、基于SQL-like的操作(基于Table的关系操作)

  • 面向批处理支持:FlinkML(机器学习库)、Gelly(图处理)

Flink的优势

  • 支持高吞吐、低延迟、高性能的流处理
  • 支持高度灵活的窗口(Window)操作
  • 支持有状态计算的Exactly-once语义
  • 提供DataStream API和DataSet API

image

image

Flink基本编程模型

  • Flink程序的基础构建模块是流(streams) 与 转换(transformations)
  • 每一个数据流起始于一个或多个 source,并终止于一个或多个 sink

下面是一个由Flink程序映射为Streaming Dataflow的示意图:

image

并行数据流示意图:

image

Flink基本架构

  • Flink是基于Master-Slave风格的架构
  • Flink集群启动时,会启动一个JobManager进程、至少一个TaskManager进程

image

JobManager

  • Flink系统的协调者,它负责接收Flink Job,调度组成Job的多个Task的执行

  • 收集Job的状态信息,并管理Flink集群中从节点TaskManager

TaskManager

  • 实际负责执行计算的Worker,在其上执行Flink Job的一组Task
  • TaskManager负责管理其所在节点上的资源信息,如内存、磁盘、网络,在启动的时候将资源的状态向JobManager汇报

Client

  • 用户提交一个Flink程序时,会首先创建一个Client,该Client首先会对用户提交的Flink程序进行预处理,并提交到Flink集群

  • Client会将用户提交的Flink程序组装一个JobGraph, 并且是以JobGraph的形式提交的

最后

本文是例行介绍,熟悉的直接跳过。



作者:大数据技术与架构
链接:https://www.jianshu.com/p/26bd686b9517

Flink从入门到放弃 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结 前言 Flink是一个流批一体处理框架 官网链接:Flink官网 提示:以下是本篇文章正文内容,下面案例可供参考 一、Flink初体验? 在IDEA上创建一个自己的flink程序 1.引入依赖库 代码如下(示例): <dependency> <groupId>org.a.. 阅读详情

相关推荐

Flink入门 01.概述

1 实时即未来 如今的我们正生活在新一次的信息革命浪潮中,5G、物联网、智慧城市、工业4.0、新基建……等新名词层出不穷,唯一不变的就是变化!对于我们所学习的大数据来说更是这样:数据产生的越来越快、数据量越来越大,数据的来源越来越千变万化,数据中隐藏的价值规律更是越来越被重视!数字化时代的未来正在被我们创造! 历史的发展从来不会一帆风顺,随着大数据时代的发展,海量数据和多种业务的实时处理需求激增,比如:实时监控报警系统、实时风控系统、实时推荐系统等,传统的批处理方式和早期的流式处理框架因其自身的局限性

跟着大数据和AI去旅行 545

【Flink介绍】为什么选择Flink?

本文总结一下项目里选择Flink的理由,还有自己当时对Flink的一些好奇~

qq_47450919的博客 1543

VSCode+Keil高效开发STM32:Keil Assistant插件配置全攻略

本文详细介绍了如何通过VSCode的Keil Assistant插件,将Keil MDK的编译调试能力与VSCode的现代编辑体验相结合,打造高效的STM32开发环境。文章涵盖了从环境配置、工程导入、智能提示设置到与STM32CubeMX协同工作的全流程攻略,旨在解决Keil编辑器效率低下的痛点,大幅提升嵌入式开发的编码与项目管理效率。

gold的博客 509

如何使用 Flink 每天实时处理百亿条日志?

“ Sherlock.IO 是 eBay 现有的监控平台,每天要处理上百亿条日志、事件和指标。Flink Streaming job 实时处理系统用于处理其中的日志和事件...

http://www.54tianzhisheng.cn/ 2336

MATLAB控制信号发生器(USB-GPIB-HS)GPIB仪器控制教程(含matlab代码)

自动化测试时需要自动产生信号,通过matlab控制信号发生器的频率与功率,以实现自动化信号生成输出

qq_43686057的博客 1607

Unity游戏开发实战:手把手教你用C#实现一个简单的反向运动学(IK)控制器

本文详细介绍了在Unity游戏开发中如何使用C#实现一个简单的反向运动学(IK)控制器。通过建立骨骼层级结构、实现CCD算法和角度限制,开发者可以轻松创建自然的角色动画效果。文章还提供了可视化调试工具和性能优化方案,帮助提升开发效率。

weixin_42523711的博客 244

flink入门_Flink从入门到放弃-入门篇

大数据成神之路:点我去成神之路系列目录^_^Java高级特性增强-集合Java高级特性增强-多线程Java高级特性增强-SynchronizedJava高级特性增强-volatileJava高级特性增强-并发集合框架Java高级特性增强-分布式Java高级特性增强-ZookeeperJava高级特性增强-JVMJava高级特性增强-NIO...已经更新80+篇~导语大数据Java基础入门篇从昨天起...

weixin_39815925的博客 293

maya中的几个热盒(空格、shift、w键)

maya中许多功能打包放进了不同的热盒中,让我们使用起来更加的便捷,熟练掌握后可以大大提升了建模速度。按下不同按键后鼠标不需要精确点到某个图标,往某个方向滑滑滑就打开了相应功能,非常的炫酷和迅猛。

m0_71983242的博客 1759

Flink从入门到放弃之入门篇(一)-Flink快速上手

​1.Flink介绍 1.1 Flink简介 Apache Flink是一个面向分布式数据流处理和批量数据 处理的开源计算平台,可以对有限数据流和无限数据流进行有状态计算,即提供支持流处理和批处理两种类型的功能 1.2 Flink特点 批流统一 支持高吞吐、低延迟‘高性能的流处理 支持有状态计算的Exactly-Once语义 支持高度灵活的窗口操作,如基于事件时间,基于会话时间,基于处理时间等。 支持Backpressure功能的持续流模型 支持

进击吧大数据的博客 1532

Windows下高效部署llama.cpp:从环境配置到模型量化的完整指南

本文提供了一份详尽的Windows系统下部署llama.cpp的完整指南。内容涵盖从Python环境配置、使用CMake与MinGW编译工具链的搭建,到编译llama.cpp项目、获取并转换模型为GGUF格式,以及执行模型量化和基础推理测试的全过程。指南旨在帮助开发者在普通Windows电脑上,无需高端显卡,仅凭CPU即可高效运行大语言模型,并重点解决了部署过程中常见的环境与编译错误。

weixin_28841265的博客 884

kali设置安装burpsuite中文版

工具:通过网盘分享的文件:Burpsuite 链接:提取码: jay1。

m0_74786138的博客 5206

Flink从入门到放弃(入门篇4) DataStreamAPI

戳更多文章: 1-Flink入门 2-本地环境搭建&构建第一个Flink应用 3-DataSet API 4-DataSteam API 5-集群部署 6-分布式缓存 7-重启策略 8-Flink中的窗口 9-Flink中的Time Flink时间戳和水印 Broadcast广播变量 FlinkTable&SQL Flink实战项目实时热销排行 Flin...

weixin_30952103的博客 303

从Reset到Read:深入解析Rolling Shutter曝光流水线

本文深入解析Rolling Shutter(卷帘曝光)的工作原理,重点探讨Reset和Read信号在图像传感器中的关键作用。通过Reset-Read流水线机制,详细解释了曝光控制、时序调优及运动伪影补偿等核心技术,帮助读者理解卷帘曝光在高速摄影和动态场景中的应用。

weixin_42531925的博客 256

Flink 从入门到放弃

Flink 从入门到放弃

Infinite Progress 1484

C# 与华中数控设备通信:数控机床自动化控制与实时监测系统

华中数控系统与C#通信开发指南 核心要点 通信基础 支持串口(RS232/RS485)和以太网两种连接方式 协议选择:通用Modbus协议或华中自定义HNC协议 关键数据映射表明确各参数对应的寄存器地址和功能码 系统架构 四层架构:设备层→通信层→业务层→应用层 包含实时数据采集、指令下发、状态监控、异常处理全流程 支持Modbus和HNC协议动态切换 代码实现 串口通信使用NModbus库简化开发 提供连接管理、数据读取、指令下发完整示例 包含异常处理和超时重连机制 应用价值 实现数控机床远程监控和自动化

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 2025

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Flink:从入门到放弃

文章目录前言一、Flink简介1. Flink组件栈2. Flink基石 前言 待补充 一、Flink简介 Apache Flink 是一个框架和分布式处理引擎,用于对无界和有界数据流进行状态计算。 1. Flink组件栈 每一层所包含的组件都提供了特定的抽象,用来服务于上层组件: 物理部署层: Flink 支持本地运行、能在独立集群或者在被 YARN 管理的集群上运行, 也能部署在云上,该层主要涉及Flink的部署模式,目前Flink支持多种部署模式:本地、集群(Standalone、YARN)、云(G

程序园@大Null 2576

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Apache Flink从入门到放弃——Flink简介(一)

Apache Flink是一个分布式大数据计算引擎,可以对有界的数据和无界的数据进行有状态的计算,可部署在各种集群环境中,对各种大小数据规模进行快速计算,本章节主要介绍下Flink的历史和由来以及框架基础。............

LXWalaz1s1s的博客 8741

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

flink从入门到放弃之入门篇(二)-Source操作

​1.Flink预定义Source操作 在flink中,source主要负责数据的读取。 flink预定义的source中又分为「并行source(主要实现ParallelSourceFunction接口)「和」非并行source(主要实现了SourceFunction接口)」 附上官网相关的说明: you can always write your own custom sources by implementing theSourceFunctionfor non-parallel sour..

进击吧大数据的博客 2079

Flink从入门到放弃之入门篇(五)-关于乱序那点事

引入 通过对上篇Flink从入门到放弃之入门篇(四)-剖析窗口生命周期的讲解,我们对flink窗口的整个生命周期有了一个大致的了解,并掌握了窗口的作用。这里给出一个常见的生产案例,如统计每分钟的点击用户数,技术实现上一般是flink对接kafka(假设这里我们保证全局有序的),窗口长度为1分钟。如下图示例: 图中的结果可以说是精准的,不过这里有一个前提条件就是消费kafka时消息是全局有序的。但是一般实际环境下很难保证全局有序,那么就会出现下图的情况:可能由于网络延迟或者系统故障等一些因素导致20:

进击吧大数据的博客 733

Flink入门到放弃

简介 Apache Flink是一个框架和分布式处理引擎,用于对无界和有界数据流进行有状态计算。Flink被设计在所有常见的集群环境中运行,以内存执行速度和任意规模来执行计算。 https://flink.apache.org/zh/# 快速上手 准备 pom.xml <properties> <flink.version>1.12.0</flink.version> <java.version>1.8</java.ve

瑞瑞的博客 413

Flink从入门到放弃(入门篇3)-DataSetAPI

戳更多文章: 1-Flink入门 2-本地环境搭建&构建第一个Flink应用 3-DataSet API 4-DataSteam API 5-集群部署 6-分布式缓存 7-重启策略 8-Flink中的窗口 9-Flink中的Time Flink时间戳和水印 Broadcast广播变量 FlinkTable&SQL Flink实战项目实时热销排行 Flin...

weixin_30273501的博客 183

Flink从入门到放弃(入门篇2)-本地环境搭建&构建第一个Flink应用

本地安装单机版本Flink 一般来说,线上都是集群模式,那么单机模式方便我们测试和学习。 环境要求 本地机器上需要有 Java 8 和 maven 环境,推荐在linux或者mac上开发Flink应用: 如果有 Java 8 环境,运行下面的命令会输出如下版本信息: 如果有 maven 环境,运行下面的命令会输出如下版本信息: 开发工具推荐使用 ItelliJ IDEA。 插播广告 全网唯...

weixin_34250434的博客 287
上一篇: Flink vs. Spark简单分析
下一篇: RocketMQ与kafka对比(18项差异)-转自阿里中间件
hxpjava1
博客等级 码龄19年 1365粉丝 511原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值