Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Hive, mail # dev - Re: Review Request 11925: Hive-3159 Update AvroSerde to determine schema of new tables


Copy link to this message
-
Re: Review Request 11925: Hive-3159 Update AvroSerde to determine schema of new tables
Jakob Homan 2013-07-29, 17:41


> On June 29, 2013, 7:43 p.m., Ashutosh Chauhan wrote:
> > serde/src/java/org/apache/hadoop/hive/serde2/avro/AvroSerdeUtils.java, line 70
> > <https://reviews.apache.org/r/11925/diff/2/?file=307412#file307412line70>
> >
> >     I think determining schema from table definition should be default. There are multiple of determining schema. I think order should be:
> >     a) Try table definition.
> >     b) Try schema literal in properties.
> >     c) Try from hdfs.
> >     d) Try from url.

This is a big change.  Avro tables have always been defined via a property.  This change is to support a small use case; why switch the entire order?
- Jakob
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/11925/#review22571
-----------------------------------------------------------
On July 23, 2013, 2:51 a.m., Mohammad Islam wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/11925/
> -----------------------------------------------------------
>
> (Updated July 23, 2013, 2:51 a.m.)
>
>
> Review request for hive, Ashutosh Chauhan and Jakob Homan.
>
>
> Bugs: HIVE-3159
>     https://issues.apache.org/jira/browse/HIVE-3159
>
>
> Repository: hive-git
>
>
> Description
> -------
>
> Problem:
> Hive doesn't support to create a Avro-based table using HQL create table command. It currently requires to specify Avro schema literal or schema file name.
> For multiple cases, it is very inconvenient for user.
> Some of the un-supported use cases:
> 1. Create table ... <Avro-SERDE etc.> as SELECT ... from <NON-AVRO FILE>
> 2. Create table ... <Avro-SERDE etc.> as SELECT from <AVRO TABLE>
> 3. Create  table  without specifying Avro schema.
>
>
> Diffs
> -----
>
>   ql/src/test/queries/clientpositive/avro_create_as_select.q PRE-CREATION
>   ql/src/test/queries/clientpositive/avro_create_as_select2.q PRE-CREATION
>   ql/src/test/queries/clientpositive/avro_no_schema_test.q PRE-CREATION
>   ql/src/test/queries/clientpositive/avro_without_schema.q PRE-CREATION
>   ql/src/test/results/clientpositive/avro_create_as_select.q.out PRE-CREATION
>   ql/src/test/results/clientpositive/avro_create_as_select2.q.out PRE-CREATION
>   ql/src/test/results/clientpositive/avro_no_schema_test.q.out PRE-CREATION
>   ql/src/test/results/clientpositive/avro_without_schema.q.out PRE-CREATION
>   serde/src/java/org/apache/hadoop/hive/serde2/avro/AvroSerdeUtils.java 13848b6
>   serde/src/java/org/apache/hadoop/hive/serde2/avro/TypeInfoToSchema.java PRE-CREATION
>   serde/src/test/org/apache/hadoop/hive/serde2/avro/TestAvroSerdeUtils.java 010f614
>   serde/src/test/org/apache/hadoop/hive/serde2/avro/TestTypeInfoToSchema.java PRE-CREATION
>
> Diff: https://reviews.apache.org/r/11925/diff/
>
>
> Testing
> -------
>
> Wrote a new java Test class for a new Java class. Added a new test case into existing java test class. In addition, there are 4 .q file for testing multiple use-cases.
>
>
> Thanks,
>
> Mohammad Islam
>
>