Hi Forward: Document looks good to me. I think you can just start doing this. They all work very independently, so I don't think there's any obvious blocking.
Best, Jingsong Lee On Sat, Nov 30, 2019 at 10:59 AM Forward Xu <forwardxu...@gmail.com> wrote: > Hi everyone, It's been a long time since I started this discussion. Do you > have anything to add and improve? > Best, > Forward > > Forward Xu <forwardxu...@gmail.com> 于2019年9月22日周日 下午6:30写道: > > > Hi Jack, > > Thank you very much for your reply, google doc I have updated, and some > of > > your questions I replied. > > In addition, I want to apply for Flip permissions for this purpose. > > > > Best, > > Forward > > > > Jark Wu <imj...@gmail.com> 于2019年9月20日周五 下午9:53写道: > > > >> Hi Forward, > >> > >> Sorry for the late reply. I have went through the design doc and I think > >> it > >> is very nice. > >> > >> Here are my thoughts and suggestions: > >> > >> 0) I think support JSON functions in SQL is not complicated. Because > >> Calcite already supports the parser part and the runtime part. > >> We only need to integrate it in Flink and add good coverage tests. > >> 1) However, I think we should also design the corresponding JSON > Functions > >> API for Table API which is very important. > >> I don't have a clear idea about how to support all the JSON Function > >> syntax in Table API. And this may need more discussions. > >> 2) IMO, it deserves a FLIP (especially for the Table API part). You can > >> follow the FLIP process [1] to start a FLIP proposal. > >> 3) I think we only need to implement it in blink planner as we are going > >> to > >> deprecate old planner. > >> So could you update the implementation section in the doc because the > >> implementation in blink planner should be different. > >> 4) It would be better to have an implementation plan to priority the > >> sub-tasks. > >> From my point of view, JSON_VALUE is the most important and > JSON_TABLE > >> gets the least priority. > >> > >> I also left some comments in the google doc. > >> > >> Hi @JingsongLee <lzljs3620...@aliyun.com> , > >> > >> I think we don't need to wait for FLIP-51. As we don't have a clear > >> progress of FLIP-51. > >> And as far as I know, it will add a few of PlannerExpressions which can > be > >> refactored easily during FLIP-51. > >> > >> > >> Cheers, > >> Jark > >> > >> [1]: > >> > >> > https://cwiki.apache.org/confluence/display/FLINK/Flink+Improvement+Proposals > >> > >> > >> > >> On Thu, 5 Sep 2019 at 19:29, vino yang <yanghua1...@gmail.com> wrote: > >> > >> > +1 to have JSON functions in Flink SQL > >> > > >> > JingsongLee <lzljs3620...@aliyun.com.invalid> 于2019年9月5日周四 下午4:46写道: > >> > > >> > > +1 > >> > > Nice document. I think it is easier to do after expression > >> reworking[1]. > >> > > By the way, which planner do you want to start? > >> > > > >> > > [1] > >> > > > >> > > >> > https://cwiki.apache.org/confluence/display/FLINK/FLIP-51%3A+Rework+of+the+Expression+Design > >> > > > >> > > Best, > >> > > Jingsong Lee > >> > > > >> > > > >> > > ------------------------------------------------------------------ > >> > > From:TANG Wen-hui <winifred.wenhui.t...@gmail.com> > >> > > Send Time:2019年9月5日(星期四) 14:36 > >> > > To:dev <dev@flink.apache.org> > >> > > Subject:Re: Re: [DISCUSS] Support JSON functions in Flink SQL > >> > > > >> > > +1 > >> > > I have done similar work before. > >> > > Looking forward to discussing this feature. > >> > > > >> > > Best > >> > > wenhui > >> > > > >> > > > >> > > > >> > > winifred.wenhui.t...@gmail.com > >> > > > >> > > From: Kurt Young > >> > > Date: 2019-09-05 14:00 > >> > > To: dev > >> > > CC: Anyang Hu > >> > > Subject: Re: [DISCUSS] Support JSON functions in Flink SQL > >> > > +1 to add JSON support to Flink. We also see lots of requirements > for > >> > JSON > >> > > related functions in our internal platform. Since these are already > >> SQL > >> > > standard, I think it's a good time to add them to Flink. > >> > > > >> > > Best, > >> > > Kurt > >> > > > >> > > > >> > > On Thu, Sep 5, 2019 at 10:37 AM Qi Luo <luoqi...@gmail.com> wrote: > >> > > > >> > > > We also see strong demands from our SQL users for JSON/Date > related > >> > > > functions. > >> > > > > >> > > > Also +Anyang Hu <huanyang1...@gmail.com> > >> > > > > >> > > > On Wed, Sep 4, 2019 at 9:51 PM Jark Wu <imj...@gmail.com> wrote: > >> > > > > >> > > > > Hi Forward, > >> > > > > > >> > > > > Thanks for bringing this discussion and preparing the nice > design. > >> > > > > I think it's nice to have the JSON functions in the next > release. > >> > > > > We have received some requirements for this feature. > >> > > > > > >> > > > > I can help to shepherd this JSON functions effort and will leave > >> > > comments > >> > > > > in the design doc in the next days. > >> > > > > > >> > > > > Hi Danny, > >> > > > > > >> > > > > The new introduced JSON functions are from SQL:2016, not from > >> MySQL. > >> > > > > So there no JSON type is needed. According to the SQL:2016, the > >> > > > > representation of JSON data can be "character string" which is > >> also > >> > > > > the current implementation in Calcite[1]. > >> > > > > > >> > > > > Best, > >> > > > > Jark > >> > > > > > >> > > > > > >> > > > > [1]: > >> https://calcite.apache.org/docs/reference.html#json-functions > >> > > > > > >> > > > > > >> > > > > On Wed, 4 Sep 2019 at 21:22, Xu Forward <forwardxu...@gmail.com > > > >> > > wrote: > >> > > > > > >> > > > > > hi Danny Chan ,Thank you very much for your reply, your help > can > >> > help > >> > > > me > >> > > > > > further improve this discussion. > >> > > > > > Best > >> > > > > > forward > >> > > > > > > >> > > > > > Danny Chan <yuzhao....@gmail.com> 于2019年9月4日周三 下午8:50写道: > >> > > > > > > >> > > > > > > Thanks Xu Forward for bring up this topic, I think the JSON > >> > > functions > >> > > > > are > >> > > > > > > very useful especially for those MySQL users. > >> > > > > > > > >> > > > > > > I saw that you have done some work within the Apache > Calcite, > >> > > that’s > >> > > > a > >> > > > > > > good start, but this is one concern from me, Flink doesn’t > >> > support > >> > > > JSON > >> > > > > > > type internal, so how to represent a JSON object in Flink > >> maybe a > >> > > key > >> > > > > > point > >> > > > > > > we need to resolve. In Calcite, we use ANY type to represent > >> as > >> > the > >> > > > > JSON, > >> > > > > > > but I don’t think it is the right way to go, maybe we can > >> have a > >> > > > > > discussion > >> > > > > > > here. > >> > > > > > > > >> > > > > > > Best, > >> > > > > > > Danny Chan > >> > > > > > > 在 2019年9月4日 +0800 PM8:34,Xu Forward <forwardxu...@gmail.com > >> >,写道: > >> > > > > > > > Hi everybody, > >> > > > > > > > > >> > > > > > > > I'd like to kick off a discussion on Support JSON > functions > >> in > >> > > > Flink > >> > > > > > SQL. > >> > > > > > > > > >> > > > > > > > The entire plan is divided into two steps: > >> > > > > > > > 1. Implement Support SQL 2016-2017 JSON functions in Flink > >> > > SQL[1]. > >> > > > > > > > 2. Implement non-Support SQL 2016-2017 JSON functions in > >> Flink > >> > > SQL, > >> > > > > > such > >> > > > > > > as > >> > > > > > > > JSON_TYPE in Mysql, JSON_LENGTH, etc. Very useful JSON > >> > functions. > >> > > > > > > > > >> > > > > > > > Would love to hear your thoughts. > >> > > > > > > > > >> > > > > > > > [1] > >> > > > > > > > > >> > > > > > > > >> > > > > > > >> > > > > > >> > > > > >> > > > >> > > >> > https://docs.google.com/document/d/1JfaFYIFOAY8P2pFhOYNCQ9RTzwF4l85_bnTvImOLKMk/edit#heading=h.76mb88ca6yjp > >> > > > > > > > > >> > > > > > > > Best, > >> > > > > > > > ForwardXu > >> > > > > > > > >> > > > > > > >> > > > > > >> > > > > >> > > > >> > > >> > > > -- Best, Jingsong Lee