Spark VS Flink,大数据该学什么

news2024/11/18 7:44:08

Spark VS Flink:功能比较

Spark和Flink中的功能集在很多方面都不同,如下表所示:

Flink特点

  • 支持高吞吐、低延迟、高性能的流处理

  • 有状态计算的Exactly-once语义,对于一条message,receiver确保只收到一次

  • 支持带有事件时间(event time)的流处理和窗口处理。事件时间的语义使流计算的结果更加精确,尤其在事件到达无序或者延迟的情况下。

  • 支持高度灵活的窗口(window)操作。支持基于time、count、session,以及data-driven的窗口操作,能很好的对现实环境中的创建的数据进行建模。

  • 轻量的容错处理( fault tolerance)。它使得系统既能保持高的吞吐率又能保证exactly-once的一致性。通过轻量的state snapshots实现

  • 支持机器学习(FlinkML)、图分析(Gelly)、关系数据处理(Table)、复杂事件处理(CEP)

  • 支持savepoints 机制(一般手动触发)。即可以将应用的运行状态保存下来;在升级应用或者处理历史数据是能够做到无状态丢失和最小停机时间。

  • 支持大规模的集群模式,支持yarn、Mesos。可运行在成千上万的节点上

  • Flink在JVM内部实现了自己的内存管理

  • 支持迭代计算

  • 支持程序自动优化:避免特定情况下Shuffle、排序等昂贵操作,中间结果进行缓存

  • API支持,对Streaming数据类应用,提供DataStream API,对批处理类应用,提供DataSet API(支持Java/Scala)

  • 支持Flink on YARN、HDFS、Kafka、HBase、Hadoop、ElasticSearch、Storm、S3等整合

Spark特点

  • 轻量级快速处理 :Spark允许传统Hadoop集群中的应用程序在内存中以100倍的速度运行,即使在磁盘上运行也能快10倍。Spark通过减少磁盘IO来达到性能的提升,提供 Cache 机制来支持需要反复迭代计算或者多次数据共享,减少数据读取的 IO 开销;

  • 易于使用 :Spark支持多语言。Spark允许Java、Scala、Python及R

  • 支持复杂查询 :除了简单的map及reduce操作之外,Spark还支持filter、foreach、reduceByKey、aggregate以及SQL查询、流式查询等复杂查询

  • 实时的流处理 :对比MapReduce只能处理离线数据,Spark还能支持实时流计算。SparkStreaming主要用来对数据进行实时处理,当然在YARN之后Hadoop也可以借助其他的工具进行流式计算

  • 通用解决方案:Spark提供了统一的解决方案。Spark可以用于批处理、交互式查询(Spark SQL)、实时流处理(Spark Streaming)、机器学习(Spark MLlib)和图计算(GraphX)

  • 与其他开源产品集成:Spark可以使用Hadoop的YARN、Apache Mesos(已经启用)、Kubernetes作为它的资源管理和调度器,并且可以处理所有Hadoop支持的数据,包括HDFS、HBase和Cassandra等

虽然 Spark和 Flink有相似之处和优势,但 Spark 更成熟,使用范围更广。此外,Spark 具有托管支持,并且很容易找到许多现有用例以及其他用户共享的最佳实践。

虽然 Flink并不成熟,但它对于复杂的事件处理或原生流用例很有用,因为它提供了更好的性能、延迟和可扩展性。此外,它对窗口和状态管理有更好的支持。Flink能够使用原始操作完成许多需要在 Spark 中开发自定义逻辑的操作。

‍只能说各有千秋,目前大数据框架还离不开Spark和Flink,因此两者缺一不可。

学习大数据开发,也必须要同时掌握这两个框架。


 python大数据方向

2022最新大数据Hadoop入门视频教程,最适合零基础自学的大数据Hadoop教程
2022年大数据spark3.2入门Spark全套视频教程,4天spark3.2快速入门到精通,全网首套基于Python语言的spark教程
2022年MySQL基础入门2022最新MySQL知识精讲+mysql实战案例_零基础mysql数据库入门到高级全套教程

Python+大数据开发
MySQL数据库:2022最新MySQL知识精讲+mysql实战案例_零基础mysql数据库入门到高级全套教程
Hadoop入门:2022最新大数据Hadoop入门视频教程,最适合零基础自学的大数据Hadoop教程
Hive数仓项目:大数据项目实战教程_大数据企业级离线数据仓库,在线教育项目实战(Hive数仓项目完整流程)

PB内存计算
Python入门:全套Python教程_Python基础入门视频教程,零基础小白自学Python必备教程
Python编程进阶:Python高级语法进阶教程_python多任务及网络编程,从零搭建网站全套教程
spark3.2从基础到精通:Spark全套视频教程,4天spark3.2快速入门到精通,全网首套基于Python语言的spark教程
Hive+Spark离线数仓工业项目实战:全网首次披露大数据Spark离线数仓工业项目实战,Hive+Spark构建企业级大数据平台

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/63249.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

超声功率放大器在MEMS超声测试中的应用

MEMS(微机电系统)技术的不断发展,目前已经广泛应用在生物、航空、医学、航天等多领域。MEMS传感器即微机电系统(Micro-electroMechanicalSystems),是指精密机械系统和微电子电路技术结合发展出来的一项工程…

一文800字手把手教你使用Docker实现分布式Web自动化

01、前言 顺着docker的发展,很多测试的同学也已经在测试工作上使用docker作为环境基础去进行一些自动化测试,这篇文章主要讲述在docker中使用浏览器进行自动化测试如果可以实现可视化,同时可以对浏览器进行相关的操作。 02、开篇 首先我们先…

在RVIZ中进行可视化操作

文章目录可视化图片catkin新建工程主函数代码cmakelists.txt编译和运行在rviz中显示可视化realsense安装realsense SDK在ROS中安装realsense在rviz中显示参考可视化图片 catkin新建工程 mkdir -p rosopencv/srccd rosopencv/srccatkin_create_pkg rosopencv sensor_msgs cv_br…

Python中正则表达式的使用

正则表达式就是从字符串中发现规律,并通过“抽象”的符号表达出来。打个比方,对于2,5,10,17,26,37这样的数字序列,如何计算第7个值,肯定要先找该序列的规律,然后用n21这个表达式来描述其规律,进而得到第7个…

前端骨架屏应用

什么是骨架屏 骨架屏可以理解为在页面数据尚未返回或页面未完成完全渲染前,先给用户呈现一个由灰白块组成的当前页面大致结构,让用户产生页面正在逐渐渲染的感受,从而使加载过程从视觉上变得流畅。 生成后的骨架屏页面如下图所示&#xff1…

第二证券|沪指冲上3200点,中字头太火爆!

轿车整车概念股拉升,多要素共同刺激下,新能源车或将呈现一轮涨价潮。 今天早盘,三大股指走势分解,沪指拉升涨1.56%,站上3200点关口;创业板指则围绕平盘线展开震动,跌0.39%。 以稳妥股为首的大金…

将数据预处理嵌入AI模型的常见技巧

作者:战鹏州 英特尔物联网行业创新大使 目录 1.1 用模型优化器实现数据预处理 1.1.1 模型优化器预处理参数 1.1.2 将ResNet模型的预处理嵌入模型 1.2 用OpenVINO™ 预处理API实现数据预处理 1.3 使用模型缓存技术进一步缩短首次推理时延 1.4 总结 本文将介绍…

机器学习——评估和改进学习算法

0. 引言 当我们运用训练好了的模型来预测未知数据的时候发现有较大的误差,我们下一步可以做什么? 获得更多的训练样本——通常是有效的,但代价较大,下面的方法也可能有效,可考虑先采用下面的几种方法。尝试减少特征的…

2022年最新Android面试题整理,全网都在看,史上最全面试攻略

Android面试现在什么东西是必须考察的?专业素养还是面试技巧?四大组件还是Framework层源码?哪有什么必考的,可以说所有技术栈都不是必考,但又是必考。话虽看似矛盾,但却反映了当前国内互联网环境的现状&…

基于随机油漆优化器 (MOSPO)求解多目标优化问题附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。 🍎个人主页:Matlab科研工作室 🍊个人信条:格物致知。 更多Matlab仿真内容点击👇 智能优化算法 …

HTML刷题

HTML5 之前的版本是 HTML4.01 onblur 和 onfocus 属于焦点事件: onblur:失去焦点 onfocus:获取焦点 链接:为同一个文件添加多种文件格式的原因是什么 ?&l__牛客网 来源:牛客网 1.为同一个文件添…

vue提取字符串中中文汉字的大写首字母

vue提取字符串中中文汉字的大写首字母 1.需求背景 最近开发vue项目,在关于药品的项目中有个需求是要提取药品中文名称的首字母组成拼音码。 解决方案 这里需要用到pinyin-pro插件,参数介绍如下: 使用如下: // 1、安装piny…

OpenAI ChatGPT注册试用全攻略

OpenAI ChatGPT注册试用全攻略 最近ChatGPT很火,但是有人注册会经常出现不服务当前地区问题,现在手把手教你解决。 如何在中国试用ChatGPT? 这是ChatGPT给的回答 您好,ChatGPT是一种计算机程序,可以自动生成自然语…

C#大型外卖订单调度系统源码PC版 手机版 商户版

开发环境: VS2012 SQL2008R2 菜单功能 1、手机端功能模块 1)自动定位或者搜索地址:使用百度地图,实现自动定位,打开微信自动定位,搜索附件外卖商家 2)附近外卖商家展示&…

《痞子衡嵌入式半月刊》 第 31 期

痞子衡嵌入式半月刊: 第 31 期 这里分享嵌入式领域有用有趣的项目/工具以及一些热点新闻,农历年分二十四节气,希望在每个交节之日准时发布一期。 本期刊是开源项目(GitHub: JayHeng/pzh-mcu-bi-weekly),欢…

后端存储实战课——高速增长篇

数据库超时 MySQL CPU 的利用率一直是 100% 的话,MySQL 基本属于不可用的状态,执行的 SQL 都会超时。 CPU 利用率高的情况,绝大多数是由于慢 SQL 引起的,可以通过分析慢 SQL 日志查找类似问题原因。由于数据库忙的时候&#xff…

深入学习Android

我通过阅读邓凡平前辈的《深入理解Android》,为了加深学习作此学习笔记。虽然是邓老师2011著的书,但其中的安卓框架还是可以学习的。另老师的csdn地址在:阿拉神农的博客_CSDN博客-Android开发系列,深入理解Android,移动万态领域博主tips:阅读…

如何进阶一名有竞争力的程序员?

前言 这段时间,又互联网寒冬了,你看消息满天飞。一瞬间,裁员的,辟谣的,很是热闹。这搞得我们程序员很难受,本来压力就大,还动不动有人在你耳边煽风点火制造恐慌。我想说:难道就不能…

[附源码]Python计算机毕业设计SSM教师信息采集系统(程序+LW)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

APISIX 在君润人力云原生平台的架构实践

讲师:袁鹏,一页科技架构师 摘要: 君润人力采用多套 Apache APISIX 集群来满足自研服务平台的功能需求。 君润人力成立于 2019 年,是一家以科技驱动的人力资源解决方案服务商,依托行业领先的科技水平和服务能力&#xf…