你的source是exactly-once的source吗? in-progress还在,就证明了这个分区的数据还没写完,理论上源头数据需要回退消费,那为什么你重启后作业不会再写这个分区了呢?
On Wed, Aug 12, 2020 at 12:51 PM kandy.wang <kandy1...@163.com> wrote: > > > > > > > > > > > > > > > > > > > >@ Jingsong > > >导致的影响是停止前的那个分区,分区没有提交, 当程序起来之后,写的分区和之前分区不是同一个分区,没有_SUCCESS文件标记。 > 用presto查询查不了 > 举例:12:35分钟应当写的是 12:35 00秒 -12:39分 59秒 之间的数据, > 'sink.partition-commit.trigger'='process-time', > 'sink.partition-commit.delay'='0 min', > 'sink.partition-commit.policy.kind'='metastore,success-file,custom', > 'sink.rolling-policy.check-interval'='30s', > 'sink.rolling-policy.rollover-interval'='10min', > 'sink.rolling-policy.file-size'='128MB' > 如果是12:39分 05秒左右做一次savepoint,然后 > 12:41分程序重启后,发现之前的12:35分区不再写入,里面的in-progress文件还在,但是分区没有提交,没有往hive add > partition,就导致有数据,但是确查不 了。 > 按照你说的,in-progress文件对没影响,但是影响了分区提交。就没地方触发之前12:35分区提交逻辑了。相当于丢了一个分区。这种情况我试了一下,手动add > partition 也能查了。 > > > > > > > >在 2020-08-12 12:11:53,"Jingsong Li" <jingsongl...@gmail.com> 写道: > >>in-progress文件带来了什么具体问题吗?它们是多余的文件,对流程没有影响 > >> > >>On Wed, Aug 12, 2020 at 11:05 AM Jark Wu <imj...@gmail.com> wrote: > >> > >>> 与我所知,(2) & (3) 有希望能在 1.12 中支持。 > >>> > >>> On Tue, 11 Aug 2020 at 21:15, kandy.wang <kandy1...@163.com> wrote: > >>> > >>> > 1.StreamingFileWriter 测试下来目前发现,sql方式提交任务,不能从checkpoint、savepoint恢复。 > >>> > 举例:5min产生一个分区,数据按照process_time来落,hm= 2100 的分区, 在 > >>> > 21:04分左右的时候做一次checkpoint 或savepoint,重启任务的时候,hm > >>> > =2100分区的数据还存在很多的in-progress文件。 > >>> > 另外,目前在hdfs目录下没看到pending文件,想了解一下这文件状态是如何转换的,跟之前的bucketsink好像实现不太一样。 > >>> > > >>> > > >>> > 2. sql-client不支持 checkpoint savepoint恢复的问题,何时可以支持 > >>> > > >>> > > >>> > 3.sql-client 提交任务,不支持StatementSet批量提交,何时可以支持 > >>> > >> > >> > >>-- > >>Best, Jingsong Lee > -- Best, Jingsong Lee