flink dataset api join报错

2021-07-02 Thread Eric Yang


hello,
您好,打扰到大家了,我使用的是flink的dataset的API,多个数据集进行join,比如,a join b join 
c,最终运行报错了,报错如下:
 我是需要在join的时候指定JoinHint策略么,求助,真的很感谢!







| |
Eric Yang
|
|
ymj7...@163.com
|
签名由网易邮箱大师定制



Re: flink dataset api join报错

2021-07-03 Thread Terry Wang
Hi Eric~

图片打不开,能否提供下具体使用的flink版本,使用方式和报错的异常栈~


Best,
Terry Wang



> 2021年7月2日 下午4:02,Eric Yang  写道:
> 
> 
> hello,
> 您好,打扰到大家了,我使用的是flink的dataset的API,多个数据集进行join,比如,a join b join 
> c,最终运行报错了,报错如下:
>  我是需要在join的时候指定JoinHint策略么,求助,真的很感谢!
> 
> 
> 
> 
>   
> Eric Yang
> ymj7...@163.com
>  
> 
> 签名由 网易邮箱大师  定制
> 
> 



Re: flink dataset api join报错

2021-07-04 Thread Terry Wang
HI Eric~
 1) 确定下A表和B表的大小关系,如果A表比B表小的话,可以尝试交换A和B的join位置,看看能不能work 
 2)更改join的策略,可以改成 
REPARTITION_SORT_MERGE,join执行过程会比较慢,但应该不会失败,可以参考文档https://ci.apache.org/projects/flink/flink-docs-release-1.12/dev/batch/dataset_transformations.html#join-algorithm-hints
 


Thx~

Best,
Terry Wang



> 2021年7月3日 下午8:32,Eric Yang  写道:
> 
> Hello Terry
>您好,很高兴您能回复我,我这边使用的是flink 1.12版本,使用的是flink 的 dataset api 
> 的三个数据集进行join,类似于 a join b join c,join的时候没有指定JoinHint策略,但是运行的时候报错了,具体报错信息是:
> Hash join exceeded maximum number of recursions, without reducing partitions 
> enough to be memory resident. Probably cause: Too many duplicate keys.
> 显示的是第二个join报错的,我感觉可能需要指定下join的JoinHint策略,让它强制进行repartition,不晓得是否可行。
>您这边有时间的话,希望您能看一看哈,不管怎样,还是非常感谢您,祝您生活愉快!
> 
> 
> | |
> Eric Yang
> |
> |
> ymj7...@163.com 
> |
> 签名由网易邮箱大师定制
> 
> 
> 在2021年07月3日 19:44,Terry Wangmailto:zjuwa...@gmail.com>> 
> 写道:
> Hi Eric~
> 
> 图片打不开,能否提供下具体使用的flink版本,使用方式和报错的异常栈~
> 
> 
> Best,
> Terry Wang
> 
> 
> 
> 2021年7月2日 下午4:02,Eric Yang  写道:
> 
> 
> hello,
> 您好,打扰到大家了,我使用的是flink的dataset的API,多个数据集进行join,比如,a join b join c,最终运行报错了,报错如下:
> 我是需要在join的时候指定JoinHint策略么,求助,真的很感谢!
> 
> 
> 
> 
> 
> Eric Yang
> ymj7...@163.com
>   
> >
> 签名由 网易邮箱大师  > 定制



回复: flink dataset api join报错

2021-07-03 Thread Eric Yang
Hello Terry
您好,很高兴您能回复我,我这边使用的是flink 1.12版本,使用的是flink 的 dataset api 
的三个数据集进行join,类似于 a join b join c,join的时候没有指定JoinHint策略,但是运行的时候报错了,具体报错信息是:
Hash join exceeded maximum number of recursions, without reducing partitions 
enough to be memory resident. Probably cause: Too many duplicate keys.
显示的是第二个join报错的,我感觉可能需要指定下join的JoinHint策略,让它强制进行repartition,不晓得是否可行。
您这边有时间的话,希望您能看一看哈,不管怎样,还是非常感谢您,祝您生活愉快!


| |
Eric Yang
|
|
ymj7...@163.com
|
签名由网易邮箱大师定制


在2021年07月3日 19:44,Terry Wang 写道:
Hi Eric~

图片打不开,能否提供下具体使用的flink版本,使用方式和报错的异常栈~


Best,
Terry Wang



2021年7月2日 下午4:02,Eric Yang  写道:


hello,
您好,打扰到大家了,我使用的是flink的dataset的API,多个数据集进行join,比如,a join b join c,最终运行报错了,报错如下:
我是需要在join的时候指定JoinHint策略么,求助,真的很感谢!





Eric Yang
ymj7...@163.com

签名由 网易邮箱大师  定制