生产hive sql 迁移flink 11 引擎,碰到的问题

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

生产hive sql 迁移flink 11 引擎,碰到的问题

莫失莫忘-2
最近尝试把一个生产 hive sql 任务,执行引擎切换成 flink 1.11.2 ,发现flink 11 对hive SQL的支持有下列问题1、不支持 双引号 表示字符串
2、不支持 != 表示不等运算
3、不支持 类型隐式转换
4、不支持 split 函数
5、hive 不区分大小写,flink区分大小写
6、join右表 不支持是一个子查询(Calcite bug  https://issues.apache.org/jira/browse/CALCITE-2152)
7、不支持 create table table1 as select * from pokes; 中的 as 



暂时只测到这些问题。总体感觉flink11 对 hive SQL的语句支持还不够,无法把已有离线 hive sql 任务直接 切换到flink 引擎。
Reply | Threaded
Open this post in threaded view
|

Re: 生产hive sql 迁移flink 11 引擎,碰到的问题

Jark
Administrator
Hi,

Flink SQL 1.11 暂时还不兼容 Hive SQL 语法。这个功能的设计,最近才在社区中讨论,预计1.13中支持。可以关注下这个
design 的讨论:

http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/DISCUSS-FLIP-152-Hive-Query-Syntax-Compatibility-td46928.html


Best,
Jark

On Fri, 4 Dec 2020 at 11:45, 莫失莫忘 <[hidden email]> wrote:

> 最近尝试把一个生产 hive sql 任务,执行引擎切换成 flink 1.11.2 ,发现flink 11 对hive
> SQL的支持有下列问题1、不支持 双引号 表示字符串
> 2、不支持 != 表示不等运算
> 3、不支持 类型隐式转换
> 4、不支持 split 函数
> 5、hive 不区分大小写,flink区分大小写
> 6、join右表 不支持是一个子查询(Calcite bug&nbsp;
> https://issues.apache.org/jira/browse/CALCITE-2152)
> 7、不支持 create table table1 as select * from pokes; 中的 as&nbsp;
>
>
>
> 暂时只测到这些问题。总体感觉flink11 对 hive SQL的语句支持还不够,无法把已有离线 hive sql 任务直接 切换到flink 引擎。
Reply | Threaded
Open this post in threaded view
|

Re: 生产hive sql 迁移flink 11 引擎,碰到的问题

Rui Li
Hi,

目前加载HiveModule可以使用(大部分)hive内置函数,也能解决调用内置函数时的类型转换问题。不过更全面的语法兼容还需要等FLIP-152实现了才能支持,欢迎关注。

On Fri, Dec 4, 2020 at 8:44 PM Jark Wu <[hidden email]> wrote:

> Hi,
>
> Flink SQL 1.11 暂时还不兼容 Hive SQL 语法。这个功能的设计,最近才在社区中讨论,预计1.13中支持。可以关注下这个
> design 的讨论:
>
>
> http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/DISCUSS-FLIP-152-Hive-Query-Syntax-Compatibility-td46928.html
>
>
> Best,
> Jark
>
> On Fri, 4 Dec 2020 at 11:45, 莫失莫忘 <[hidden email]> wrote:
>
> > 最近尝试把一个生产 hive sql 任务,执行引擎切换成 flink 1.11.2 ,发现flink 11 对hive
> > SQL的支持有下列问题1、不支持 双引号 表示字符串
> > 2、不支持 != 表示不等运算
> > 3、不支持 类型隐式转换
> > 4、不支持 split 函数
> > 5、hive 不区分大小写,flink区分大小写
> > 6、join右表 不支持是一个子查询(Calcite bug&nbsp;
> > https://issues.apache.org/jira/browse/CALCITE-2152)
> > 7、不支持 create table table1 as select * from pokes; 中的 as&nbsp;
> >
> >
> >
> > 暂时只测到这些问题。总体感觉flink11 对 hive SQL的语句支持还不够,无法把已有离线 hive sql 任务直接 切换到flink
> 引擎。
>


--
Best regards!
Rui Li
Reply | Threaded
Open this post in threaded view
|

回复: 生产hive sql 迁移flink 11 引擎,碰到的问题

莫失莫忘-2
我理解&nbsp;set table.sql-dialect=hive; 配置了hive 方言后,就已经加载了&nbsp;HiveModule。这样理解是错误的吗? 我在 flink -sql -client 中该如何使用到 HiveModule




------------------&nbsp;原始邮件&nbsp;------------------
发件人:                                                                                                                        "user-zh"                                                                                    <[hidden email]&gt;;
发送时间:&nbsp;2020年12月4日(星期五) 晚上9:25
收件人:&nbsp;"user-zh"<[hidden email]&gt;;

主题:&nbsp;Re: 生产hive sql 迁移flink 11 引擎,碰到的问题



Hi,

目前加载HiveModule可以使用(大部分)hive内置函数,也能解决调用内置函数时的类型转换问题。不过更全面的语法兼容还需要等FLIP-152实现了才能支持,欢迎关注。

On Fri, Dec 4, 2020 at 8:44 PM Jark Wu <[hidden email]&gt; wrote:

&gt; Hi,
&gt;
&gt; Flink SQL 1.11 暂时还不兼容 Hive SQL 语法。这个功能的设计,最近才在社区中讨论,预计1.13中支持。可以关注下这个
&gt; design 的讨论:
&gt;
&gt;
&gt; http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/DISCUSS-FLIP-152-Hive-Query-Syntax-Compatibility-td46928.html
&gt;
&gt;
&gt; Best,
&gt; Jark
&gt;
&gt; On Fri, 4 Dec 2020 at 11:45, 莫失莫忘 <[hidden email]&gt; wrote:
&gt;
&gt; &gt; 最近尝试把一个生产 hive sql 任务,执行引擎切换成 flink 1.11.2 ,发现flink 11 对hive
&gt; &gt; SQL的支持有下列问题1、不支持 双引号 表示字符串
&gt; &gt; 2、不支持 != 表示不等运算
&gt; &gt; 3、不支持 类型隐式转换
&gt; &gt; 4、不支持 split 函数
&gt; &gt; 5、hive 不区分大小写,flink区分大小写
&gt; &gt; 6、join右表 不支持是一个子查询(Calcite bug&amp;nbsp;
&gt; &gt; https://issues.apache.org/jira/browse/CALCITE-2152)
&gt; &gt; 7、不支持 create table table1 as select * from pokes; 中的 as&amp;nbsp;
&gt; &gt;
&gt; &gt;
&gt; &gt;
&gt; &gt; 暂时只测到这些问题。总体感觉flink11 对 hive SQL的语句支持还不够,无法把已有离线 hive sql 任务直接 切换到flink
&gt; 引擎。
&gt;


--
Best regards!
Rui Li
Reply | Threaded
Open this post in threaded view
|

Re: 回复: 生产hive sql 迁移flink 11 引擎,碰到的问题

莫失莫忘
找到配置module的地方了。在 sql-client-defaults.yaml 配置 module 就可以了。但是我的hive是 Hive
1.1.0-cdh5.13.1 版本的。不支持listBuiltInFunctions()。报错 Listing built in functions
are not supported until Hive 1.2.0。所以还是无法使用 hive的内置函数



--
Sent from: http://apache-flink.147419.n8.nabble.com/
Reply | Threaded
Open this post in threaded view
|

Re: 回复: 生产hive sql 迁移flink 11 引擎,碰到的问题

Rui Li
Hi,

我会尝试下让HiveModule支持低版本的hive:
https://issues.apache.org/jira/browse/FLINK-20563

On Mon, Dec 7, 2020 at 5:01 PM 莫失莫忘 <[hidden email]> wrote:

> 找到配置module的地方了。在 sql-client-defaults.yaml 配置 module 就可以了。但是我的hive是 Hive
> 1.1.0-cdh5.13.1 版本的。不支持listBuiltInFunctions()。报错 Listing built in functions
> are not supported until Hive 1.2.0。所以还是无法使用 hive的内置函数
>
>
>
> --
> Sent from: http://apache-flink.147419.n8.nabble.com/
>


--
Best regards!
Rui Li