Re: 发现flinksql写hive比写hdfs慢很多

2020-11-26 文章 Leonard Xu
Hi Hive 使用的 BulkWriter 目前有两个问题,一个是支持的数据类型没有MR writer的全,第二个是,BulkWriter 支持parquet和orc,但只支持orc的最新版本,写入低版本有兼容性问题 主要因为这两个问题,所以默认使用MR writer。 祝好, Leonard > 在 2020年11月26日,20:05,admin <17626017...@163.com> 写道: > > BulkWriter

Re: 发现flinksql写hive比写hdfs慢很多

2020-11-26 文章 admin
既然性能差异这么大,所以为什么不默认使用BulkWriter,而使用MR writer呢 > 2020年11月26日 下午7:50,Leonard Xu 写道: > > > Hi, admin > > 谢谢验证, >> 在 2020年11月26日,17:43,admin <17626017...@163.com> 写道: >> >> 默认true的情况下 两个任务同时写30分钟,写hive的任务就已经落后了3分钟 > > 此时,写hive用MR writer,写HDFS只支持Flink BulkWriter, 如果单独测试sink的话,Flink BulkWriter > 应

Re: 发现flinksql写hive比写hdfs慢很多

2020-11-26 文章 Leonard Xu
Hi, admin 谢谢验证, > 在 2020年11月26日,17:43,admin <17626017...@163.com> 写道: > > 默认true的情况下 两个任务同时写30分钟,写hive的任务就已经落后了3分钟 此时,写hive用MR writer,写HDFS只支持Flink BulkWriter, 如果单独测试sink的话,Flink BulkWriter 应该不止10%的性能提升。 > false的情况,两个写30多分钟,差异不大 false时,两个作业都用 Flink BulkWriter,差异是不大的。 另外 1.11分支上的这个issue应该在1

Re: 发现flinksql写hive比写hdfs慢很多

2020-11-26 文章 admin
Hi,Leonard 我将这个issue的改动合到我的代码里,同时看到有邮件列表里提到 table.exec.hive.fallback-mapred-writer 这个配置对写入速度也有影响, 所以我分别基于true或false做了测试。 结果是: 默认true的情况下 两个任务同时写30分钟,写hive的任务就已经落后了3分钟 false的情况,两个写30多分钟,差异不大 所以使用MR writer和flink native writer在性能上确实有很大差异 > 2020年11月26日 下午5:32,Leonard Xu 写道: > > Hi, admin > 结合这个 iss

Re: 发现flinksql写hive比写hdfs慢很多

2020-11-26 文章 Leonard Xu
Hi, admin 结合这个 issue 和你的对比结果, 我觉得应该是这个bug,这个问题在最新的分支已经修复,今天社区cut branch了,你可以帮忙在1.12的分支或master的分支上验证下吗? 祝好, Leonard [1] https://github.com/apache/flink/tree/release-1.12 [2] https://github.com/apache/flink/tree/master

Re: 发现flinksql写hive比写hdfs慢很多

2020-11-25 文章 admin
补充一下 我的flink版本是1.11.1 翻了下邮件列表,有个https://issues.apache.org/jira/browse/FLINK-19121 性能问题 ,不知道是否跟这个有关 > 2020年11月26日 上午11:49,admin <17626017...@163.com> 写道: > >

发现flinksql写hive比写hdfs慢很多

2020-11-25 文章 admin
Hi,all 两个job,都从同一个kafka读数据,一份写入hdfs,一份写入hive,都是分钟分区,并发都是200。运行一段时间后发现写hive要落后hdfs很多,而且hive任务对应的hdfs路径下,某一分区内的文件甚至跨度2个小时之久。大家遇到过这种情况没 附上对应ddl hive: CREATE EXTERNAL TABLE hive_table ( log_timestamp BIGINT, ip STRING, `raw` STRING ) PARTITIONED BY (`day` STRING, `hour` STRING,`minute` STRI