大数据入门Flink状态编程与容错机制
在大数据技术发展历程当中,Flink框架可以说是新一轮的热点技术框架,主打流批一体的计算模式,成为更适应当下需求的技术框架,因此再也技术领域得到更多的重视。今天的大数据入门分享,我们主要来讲讲Flink框架的状态编程与容错机制。
流式计算,通常分为有状态和无状态两种情况:
无状态:无状态的计算观察每个独立事件,并根据最后一个事件输出结果。
有状态:有状态的计算则会基于多个事件输出结果。
Flink流计算理念,官方说法叫做有状态的流计算,将批处理也看作是一种特殊的流,即有界的流,在这样的指导思想下,实现了批处理和流计算。
Flink状态编程
Flink有很多算子,数据源source,数据存储sink都是有状态的,流中数据都是bufferrecords,会保存一定的元素或者元数据。如:ProcessWindowFunction会缓存输入流的数据,ProcessFunction会保存设置的定时器信息等。
Flink中,状态始终与特定算子相关,总的来说有两种类型的状态:算子状态(operatorstate)和键控状态(keyedstate)。
算子状态(operatorstate)
算子状态的作用范围限定在算子任务。也就是说同一并行任务所处理的所有数据都可以访问到相同的状态,状态对于统一任务而言是共享的。算子不能由相同或不同算子的另一个任务访问。
Flink算子状态的三种基本数据结构
列表状态(Liststate):将状态表示为一组数据的列表。
联合列表状态(Unionliststate):将状态表示为一组数据的列表,它与常规列表的区别在于,在发生故障时,或者从保存点(savepoint)启动应用程序时如何恢复。
广播状态(Broadcaststate):如果一个算子有多项任务,而它的每项任务状态又都相同,那么这种情况最适合光爆状态
键控状态(keyedstate)
键控状态是根据输入数据流中定义的键(key)来维护和访问的。
Flink为每个键值维护一个状态实例,并将具有相同键的所有数据,都分区到一个算子任务中,这个任务会维护和处理这个key对应的状态。
当任务处理处理一条数据时,它会自动将状态的访问范围限定为当前输的key。因此,具有相同key的所有数据都会访问相同的状态。
KeyedState类似于一个分布式的kv的map数据结构,只能用于KeyedStream(keyby算子处理之后)。
Flink的KeyedState支持的数据类型:
ValueState〔T〕保存单个值,值得类型为T
get操作:ValueState。value()
set操作:ValueState。update(value:T)
ListState〔T〕保存一个列表,列表元素的类型T
ListState。add(value:T)
ListState。addAll(values:java。util。List〔T〕)
ListState。get()返回Iterable〔T〕
ListState。update(values:java。util。List〔T〕)
MapState〔K,V〕保存keyvalue对
MapState。get(key:K)
MapState。put(key:K,value:V)
MapState。contains(key:K)
MapState。remove(key:K)
ReducingState〔T〕
AggregatingState〔I,O〕
Flink容错机制
1、状态一致
当在分布式系统中引入状态时,自然也引入了一致性问题。一致性实际上是正确性级别的另一种说法,也就是说在成功处理故障并恢复之后得到的结果,与没有发生任何故障时得到的结果相比,前者到底有多正确。
Flink的一个重大价值在于,它既保证了exactlyonce,也具有低延迟和高吞吐的处理能力。
2、端到端(endtoend)状态一致性
端到端的一致性保证,意味着结果的正确性贯穿了整个流处理应用的始终;每一个组件都保证了它自己的一致性,整个端到端一致性级别取决于所有组件中一致性最弱的组件。
3、检查点(Checkpoint)
Flink检查点算法的正式名称是异步分界线快照(Asynchronousbarriersnapshotting)。该算法大致基于ChandyLamport分布式快照算法。
检查点是Flink最有价值的创新之一,因为它使得Flink可以保证exactlyonce,并且不需要牺牲性能。
关于大数据入门,Flink状态编程与容错机制,以上就为大家做了简单的介绍了。Flink框架在当前的大数据技术生态当中,热度持续上升,作为大数据开发者,掌握Flink势在必行。
职场中的你敢向领导提问吗?在当今社会,职场一词,向来都会瞬间引起广大上班族(即打工人)的热议和共鸣,一提起这个词,就会有说不够的故事,吐不够的槽,还有各种奇人轶事等等,今天就跟大家一起聊聊在职场中的问这……
缓存和数据库一致性问题,看这篇就够了原文出自:公众号水滴与银弹原文链接:https:mp。weixin。qq。coms4W7vmICGx6aWX701zxgPQ如何保证缓存和数据库一致性,这是一个老生……
智能安防行业落地难点分析AI赋能千行万业,是安防智能化发展的最大契机。而随着人工智能的不断成熟以及其在安防行业深层次应用的研究开发,安防行业已经进入一个全新的时代泛安防时代。这里所谓的泛安防,有两层含……
越强硬越好开,试一台特别的领克03如果说到近期汽车圈里最热门是什么车型?那必定是领克03无疑。凭借着在WTCR宁波站一举夺魁的优异表现,很多人对这款冠军车产生了莫大的兴趣。但要知道一台WTCR赛车与量产车之间存……
oa系统开发公司哪个好?办公自动化(OA),英文OfficeAutomation的缩写。它可以通过特定流程或特定环节与日常事务联系在一起,使公文在流转、审批、发布等方面提高效率,实现办公管理规范化和信……
30万级电动SUV来了个新王炸?岚图FREE初体验01hr预算30万会考虑岚图;如果有50万就选蔚来,近日岚图FREE上海试驾会上,一位刚从试驾车上下来的年轻人随即打开手机向朋友报告试驾后的新体验。这位先生并不清楚,此次……
第四十六天二叉树,Linux学习笔记:1。文件默认不能建立为执行文件,需手工赋予执行权限2。umask查看默认权限3。Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于P……
诺贝尔文学奖得主最经典著作揭示中上层社会生活真相石黑一雄说他写《长日将尽》的出发点是想书写你是如何为了成就事业而荒废了你的人生,又是如何在个人层面上蹉跎了一辈子的,他写的一直都是公共历史之下的个人记忆,是内在的冲突而非外在的……
有效保障互联网处方用药安全(人民时评)来源:人民网确保用药安全,事关人民群众身体健康,也是推动互联网医疗健康新业态健康有序发展的重要方面如今,随着互联网医院、互联网医疗平台增多,同时网上复诊也能进行医保……
慢享味蕾时光,七彩叮当破壁机夏天冷饮必不可少,当冰冰凉的饮品顺着食道滑入,那种冰爽感是整个夏天最享受的时刻。外面冷饮店除了糖就是色素,不仅卫生不敢保证,就连喝到肚子里的冰饮成份也不敢保证。所以我喜欢在家自……
快充轻旗舰荣耀Play5天生敢造上个月荣耀正式发布了荣耀Play5,这也是荣耀独立后发布的第一款Play系列新品,小编也有幸得到了这款手机的测评资格,样机来自荣耀俱乐部荣耀众测0元试用。在重度使用25天后,小……
告诉大家怎样如何找到音质好的,防断音的无线专业麦克风我一直都是用无线家用麦克风,感觉不太好,声音没有那种专业KTV房间的效果,我想买一套好用一点的无线专业麦克风。但是找来找去都不知道哪个牌子好用。我是问了好几个朋友,才知道……
关于艰难的国运与雄健的国民的教案设计【教学目标】1、知识与能力:能理解在特定的时代背景下中华民族的雄健的精神2、过程与方法:品味文中生动形象的比喻说理。3、情感态度与价值观:学……
我的名字教学反思今天,和孩子们一起学习了《我的名字》,这是一首清新的儿童诗,诗中描写了一个助人为乐不留姓名的可爱的少年的形象。他帮助了问路的叔叔,扫垃圾的阿姨,上公交车的老奶奶,推车上坡的老大……
画平行线教学反思范文在学生认识了垂线和平行线之后教材上又安排了两节动手操作的课:画垂线和平行线。在教学中我发现,对于画垂线学生还是容易掌握的,作业质量也较高,可是,画平行线就不怎么简单了,看着学生……
有趣的玻璃片教案设计思路在科学角里,旭旭小朋友拿着放大镜边看边自言自语:怎么用它看东西就大。我看到这一情景,设计了本活动。目的是通过观察不同的玻璃片,引起幼儿对周围物体现象的探索兴趣,初……
海燕郑振铎阅读解答案《海燕》又名《海燕之歌》,是高尔基创作的一篇著名散文诗。海燕在暴风雨来临之前,常在海面上飞翔。因此,在俄文里,海燕一词含有暴风雨的预言者之意。以下是小编整理的海燕郑振铎阅读解答……
窝心的拼音解释及造句窝心拼音【注音】:woxin窝心解释【意思】:方因受到委屈或侮辱后不能表白或发泄而心中苦闷。窝心造句:1、你遇到过让你觉得窝心的邻居吗?2、……
百年孤独语文教案设计教学目标了解马尔克斯及魔幻现实主义小说;阅读小说,初步了解魔幻现实主义小说的特征;了解魔幻现实主义小说与传统小说的区别;通过阅读分析,进一步提高学生的文……
三年级数学除数是一位数练习教案设计一、教学内容:课本第109110页练习十九(一)。二、教学目标:使学生进一步掌握除数是一位数除法的计算方法,并能比较熟练地进行计算。三、教学重点:……
设立的解释和造句设立拼音【注音】:sheli设立解释【意思】:成立(组织、机构等)。设立造句:1、你会设立一个信托基金吗?2、已设立了新机构来监督核电工业。……
找规律最新教学设计范文教学内容:第59页60页例1、试一试及练习十13题。教学目标:1使学生结合具体情境,探索并发现简单周期现象中的排列规律,能根据规律确定某个序号所代表的是……
姐妹的解释及造句姐妹拼音【注音】:jiemei姐妹解释【意思】:()姐姐和妹妹。)不包括本人:她没有,只有一个哥哥。)包括本人:她们俩都是先进生产者她就一个(没有姐姐或妹妹)……
思品教案做事有始有终教学目标认知知道做事有始有终是有毅力的表现,是做好事情的前提,半途而废将一事无成。情感1、做什么事情都愿意有始有终地做完。2、为学习、做事能坚持到……