hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alan Gates (JIRA)" <>
Subject [jira] [Commented] (HIVE-3472) Build An Analytical SQL Engine for MapReduce
Date Thu, 20 Sep 2012 02:49:07 GMT


Alan Gates commented on HIVE-3472:

I read over the design doc but have not looked through the code on github yet.  The first
question that comes to mind is why do you propose a separate parser for this?  I think many
people will share your goal of making Hive SQL-92 compliant.  But doing it with a totally
separate parser underneath will cause significant maintenance and usability issues.  Bugs
 in one branch will not match those in the other.  Forcing users to think about whether they
are in HQL or SQL-92 will cause confusion and maintainability problems for them as well (e.g.
a .sql file written by user1 for HQL will be run in SQL-92 mode by user2, producing either
errors or wrong results).  

Building one parser that can handle either would be a better approach for both users and developers.

One other thought on open source process.  It's often better to start with a design doc or
discussion on the dev lists before significant amounts of code are contributed.  This gives
you a chance to get feedback early before you have committed significant resources to a given
path.  Then code can be contributed in small units that interested parties can review.  The
prospect of looking through the thousands of lines of code in Hive to understand what is different
in panthera is daunting.
> Build An Analytical SQL Engine for MapReduce
> --------------------------------------------
>                 Key: HIVE-3472
>                 URL:
>             Project: Hive
>          Issue Type: New Feature
>    Affects Versions: 0.10.0
>            Reporter: Shengsheng Huang
>         Attachments: SQL-design.pdf
> While there are continuous efforts in extending Hive’s SQL support (e.g., see some
recent examples such as HIVE-2005 and HIVE-2810), many widely used SQL constructs are still
not supported in HiveQL, such as selecting from multiple tables, subquery in WHERE clauses,
> We propose to build a SQL-92 full compatible engine (for MapReduce based analytical query
processing) as an extension to Hive. 
> The SQL frontend will co-exist with the HiveQL frontend; consequently, one can  mix SQL
and HiveQL statements in their queries (switching between HiveQL mode and SQL-92 mode using
a “hive.ql.mode” parameter before each query statement). This way useful Hive extensions
are still accessible to users. 

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

View raw message