你好, 感谢回复,看了下这个文档,提到对于parquet这种列式文件只会使用onCheckpointRollPolicy,也就是只在做检查点时会滚动。flink filesystem table这块的parquet列式文件写入是不是也这样呢? https://ci.apache.org/projects/flink/flink-docs-release-1.12/zh/dev/connectors/streamfile_sink.html
lixin58...@163.com 发件人: Jingsong Li 发送时间: 2021-07-27 10:30 收件人: user-zh 主题: Re: filesystem table parquet 滚动问题 parquet因为它会在内存中攒buffer,所以文件的file-size并不能很精确。。只能等它flush了才会生效。 On Sun, Jul 25, 2021 at 9:47 AM lixin58...@163.com <lixin58...@163.com> wrote: > 大家好, > > 检查点配的是120s,滚动时长800s,滚动大小1kb,并行度配的2 > > > 不过在跑的过程中发现不管写入的多快,同时只存在一个in-progress文件,且最终生成的文件是严格按照120s生成的,这个很奇怪,似乎只有按检查点滚动生效了,与json格式的不一样。真的是这样吗?不过看官方文档没有这样说 > > 求大佬们解惑! > > create table fs_parquet > (userid bigint, name string, part string) > PARTITIONED BY (part) > with( > 'connector' = 'filesystem', > 'path' = 'hdfs:///data/fs_parquet', > 'format' = 'parquet', > 'sink.rolling-policy.file-size' = '1kb', > 'sink.rolling-policy.rollover-interval' = '800s', > 'sink.rolling-policy.check-interval' = '60s' > ); > > > > -- Best, Jingsong Lee