Hi Mingliang,

Thanks for bringing this up
>From one side, yes some engines use SHOW syntax and I would rather +0.5
here.

>From another side both SHOW and SET are very limited commands.
Maybe it would make sense to look at information_schema (mentioned in SQL
92[1])
and most databases already support it (Postgres[2], MySQL[3], CockRoach[4]).
Hive does not support it yet however there are some activities in that
direction[5].
This approach will allow to query from these tables
 (not only properties, also functions, databases and all other data
available via SHOW command)
 as from any other Flink tables.

[1] https://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt
[2] https://www.postgresql.org/docs/current/information-schema.html
[3] https://dev.mysql.com/doc/refman/8.0/en/information-schema.html
[4] https://www.cockroachlabs.com/docs/stable/information-schema.html
[5] https://issues.apache.org/jira/browse/HIVE-1010

On Wed, Dec 21, 2022 at 12:09 PM yuxia <luoyu...@alumni.sjtu.edu.cn> wrote:

> HI, Mingliang.
> Thanks for bringing this up. +1 to add this support.
> I think use syntax "SET 'key'" to show a signle variable is weird, but use
> it may be more convinent and more unified since we have used "SET" to show
> all variable.
> Considering many hive/spark users may be used to it,  seems use "SET
> 'key'" is also acceptable.
> But I have no much strong preference, use some other thing like "SHOW"
> statement also sounds good to me.
>
> Best regards,
> Yuxia
>
> ----- 原始邮件 -----
> 发件人: "Martijn Visser" <martijnvis...@apache.org>
> 收件人: "dev" <dev@flink.apache.org>
> 发送时间: 星期三, 2022年 12 月 21日 下午 5:44:15
> 主题: Re: [Discuss] SQL Client syntax to show a configuration
>
> Hi Mingliang,
>
> Thanks for opening a discussion thread on this topic, much appreciated. If
> there is no standard SQL for this, then we should have a discussion on this
> topic indeed.
>
> I'm not a fan of using "SET" to show a value. For me, "SET" implies that
> you are setting a value. I prefer "SHOW" since that clearly identifies that
> you want to display a value. Curious what others think on this topic.
>
> Best regards,
>
> Martijn
>
> On Wed, Dec 21, 2022 at 9:48 AM Mingliang Liu <lium...@apache.org> wrote:
>
> > Hi all,
> >
> > Currently in SQL Client we can use the "SET 'key'='value'" command to
> set a
> > value to a config property key for the session. We can also list all
> config
> > properties by just calling "SET". It would be convenient to show the
> value
> > of a specific config property given its key(s). Without this, users will
> > need to eyeball the very one config from all config properties which may
> > need scrolling the screen.
> >
> > I do not find a standard SQL syntax for this.
> > - Some use the syntax "SET 'key'" to show the value, for e.g. Spark SQL
> and
> > Hive.
> > - Some use the "SHOW" keyword to show session properties, for
> > e.g. CockroachDB. Trino and MySqL support a key pattern in the "SHOW
> > SESSION" statement.
> >
> > I filed FLINK-30459 to track this. I also attached initial PR #21535 that
> > uses the "SET 'key'" syntax. I chose that because I previously used this
> > syntax. It seems simpler to just use one keyword to interact with
> > session configs. When using Hive dialect, Flink SQL also supports that.
> > However, it's not straightforward enough and one probably needs to check
> > the doc first.
> >
> > As Martijn suggested, before improving the code, it's better to get it
> > discussed here first. So, is it a good idea to add this support? Which
> > syntax is preferred by our community, and are there other better ways of
> > supporting this?
> >
> > Thanks,
> >
>


-- 
Best regards,
Sergey

Reply via email to