hive-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "anishek (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HIVE-15473) Progress Bar on Beeline client
Date Wed, 21 Dec 2016 09:58:58 GMT

    [ https://issues.apache.org/jira/browse/HIVE-15473?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15766646#comment-15766646
] 

anishek commented on HIVE-15473:
--------------------------------

Give:
Currently there is tez and spark execution engines which have the ability to show the progress
bar. The Progress bar information is almost similar with few label differences in both the
representations.

There are two options of implementing this:
common changes for both approaches: Have a interface in hive-exec which returns this generic
data-structure which is implemented by various execution engines currently tez/spark. Additional
api on the ThriftCliService to get the data structure based on the execution engine.

First:

Have a generalized view printer on the beeline side which has a well defined format which
can be derived from the existing representation @   https://issues.apache.org/jira/secure/attachment/12678767/ux-demo.gif
 
Create a data-structure tied closely to the above view, to hold the relevant information such
that the view printer above can use it to fill in the required details.


Pros:
We dont need to know on the client side what execution engine the server was using the process
the query as the representations are same for both.
Faster development time since currently we are going to assume the display Format on the beeline
side and hence this will have ripple effect on the design of API's on server side as well.
 
Cons:
We will be only able to represent the progress bar for any future execution engines in the
 same format as for tez/Spark, which might / might not fit the needs of other engines?

Second:
Have a basic map of key value pairs as the serialized data structure from server to beeline
Have specific view implementations based on the execution engine ( which will be sent in the
above map )  on the beeline side. The server / beeline have to have a common understanding
of what various keys mean in the map per execution engine.

Pros:
Allows us a great deal of flexibility as to how the progress view has to be implemented on
the beeline side for any execution engine.

Cons:
Longer development time.
May be over engineering for this since we dont get support for a new Execution engine everyday.


Any preferences / suggestions ?

> Progress Bar on Beeline client
> ------------------------------
>
>                 Key: HIVE-15473
>                 URL: https://issues.apache.org/jira/browse/HIVE-15473
>             Project: Hive
>          Issue Type: Improvement
>          Components: Beeline, HiveServer2
>    Affects Versions: 2.1.1
>            Reporter: anishek
>            Assignee: anishek
>            Priority: Minor
>
> Hive Cli allows showing progress bar for tez execution engine as shown in https://issues.apache.org/jira/secure/attachment/12678767/ux-demo.gif
> it would be great to have similar progress bar displayed when user is connecting via
beeline command line client as well. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message