粉丝4654获赞2.2万

我们在跑一个就是 flink 的任务的时候,我们会发现什么呢?就是说他的那个 checkpoints 啊,一直是失败的,一直是是一直是失败的,就是所以你你呃 flink 他不断在检查你的那个 保存你的状态,然后在这个过程当中他一直是失败的,所以的话呢,就没有办法把这个弗林克的这个 job 能够执行完啊,所以他是有这样的一个问问这样的一个问题,那么这个问题是什么原因造成的呢?但是 那么我我们今天也去看了一下,最主要的核心的问题的话呢,主要是问题的话呢,主要就是说我们跑的这个任务呢,他比较大啊,然后他那个 the checkpoint 它会保持一个这个整个一个任务的一个状态,然后呢它默认的形式呢是放在那个 host table 里面,是放在内存里面的,但是呢由于你可以看到它它这个 host table 的那个内存里面,他最大只能保保持五十几兆,但是他需要的空间可能要三百多兆,所以这个导致他就始终无法把这个状态保持在这个保存下来,他等于是这样,所以的话呢他就反复反复就是那个 checkpoint, 这样就失败,失败的话呢,他就会不会让他就不断的去重启这个任务,让你这个 呃 flink 这个人无无法往下跑,它等于是这样,所以的话呢就是呃,我们就呃就发现有这样的一个问题,所以的话呢,我们就要换一种 呃,就是保存 checkpoint 的它的那个 storage, 它等于是这样,所以我们要换一个就是文件系统的 checkpoint 的四 storage 就行了,而不需要把那个 checkpoint, checkpoint 里面的这些状态保持在内存当中,他直接保存在,呃,文件资盘当中,这样的话呢,他就可以能够正常地让 flink 去跑车 这样的一些任务。好吧?呃,现在的话我们也看了一下,现在这个任务就很正常了,因为经过这样跑了一下之后的话呢,他现在这个 checkpoint 他就很顺畅了,他等于是这样,嗯。
