实时数据研发 | Flink技术栈

下周要开始接触一些实时的内容了,想来是很幸运的,这是我在新人培训上提问过技术前辈的问题:"想学习实时相关技术,但是部门没有类似的需求,应该如何提升?"当时师姐说先用心去学,然后向主管证明你可以承担相关的任务,再去争取负责相关的项目。

啊但是我没有学,感觉有点难看不懂,每次都从第一页开始看,现在还在第10页。虽然只是参与项目,重要开发有同事cover,但是还是有点子慌,决定哪怕每天看懂一点点,也比不开始的强!

今天的学习内容就从Flink技术开始

上次的内容讲过流批一体,Flink就是在一套框架中同时支持批处理与流处理的一个计算平台(Spark也可以)。

!NOTE\] 与Spark的本质不同 Spark把Stream流当作更快的批处理,而Flink把批处理看作Stream流的特例。这个根本不同决定了两者技术上的差异。

Flink是理念和架构设计非常先进的流计算引擎,并支持了流计算所需要的几乎所有特点,包括exactly once,状态管理、容错、性能 等。基于此,阿里巴巴启动了Blink项目,扩展Flink使能够使用在阿里巴巴大规模实时计算场景。

技术栈

是一个分布式的流处理引擎,它提供了支持Flink计算的全部核心实现,如支持分布式流处理,JobGraph到ExecutionGraph的映射、调度,为上层 API层提供基础服务等。

可以部署在本地、Standalone/YARN 集群或者云端。

位于Flink runtime层之上的是 Flink API层,主要实现了面向 Stream 的流处理和面向 batch 的批处理 APL。

  • DataSetAPI:对静态数据进行批处理操作,将静态数据抽象成分布式数据集。用户可以方便地使用Flink提供的各种操作符对分布式数据集进行处理、支持Java、Scala 和 Python.
  • DataStreamAPl:对数据流进行流处理操作,将流式的数据抽象成分布式的数据流用户可以方便地对分布式数据流进行各种操作,支持Java和Scala
  • TabeAPI:对结构化数据进行查询操作,将结构化数据抽象成关系表,并通过类SQL的DSL对关系表进行各种查询操作,支持Java和Scala

此外,Flink还针对特定的应用领域提供了领域库,例如,FlinkML(MachineLcaroing)为Flink的机器学习库,提供了机器学习Pipelines APl并实现了多种机器学习算法;Gelly为Flink的图计算库,提供了图计算的相关API及多种图计算算法实现。

相关推荐
一只会写代码的猫3 小时前
可持续发展中的绿色科技:推动未来的环保创新
大数据·人工智能
沧海寄馀生4 小时前
Apache Hadoop生态组件部署分享-Hadoop
大数据·hadoop·分布式·apache
毕设源码-朱学姐4 小时前
【开题答辩全过程】以 基于Hadoop的豆瓣电影数据分析系统设计与实现为例,包含答辩的问题和答案
大数据·hadoop·分布式
原神启动14 小时前
云计算大数据——Nginx入门篇( Web 核心概念、HTTP/HTTPS协议 与 Nginx 安装)
大数据·http·云计算
喝养乐多长不高5 小时前
JAVA微服务脚手架项目详解(三)
java·大数据·微服务·文件·地图·oss
north_eagle5 小时前
MySQL 业务数据,报表方案
大数据·数据库
数据库学啊6 小时前
大数据场景下时序数据库选型指南:TDengine为什么凭借领先的技术和实践脱颖而出?
大数据·数据库·时序数据库·tdengine
Mr_sun.7 小时前
Day08——ElasticSearch-基础
大数据·elasticsearch·jenkins
Elastic 中国社区官方博客7 小时前
在 Elasticsearch 中实现带可观测性的 agentic 搜索以自动调优相关性
大数据·人工智能·elasticsearch·搜索引擎·ai·全文检索
Blossom.1188 小时前
RLHF的“炼狱“突围:从PPO到DPO的工业级对齐实战
大数据·人工智能·分布式·python·算法·机器学习·边缘计算