Here is the DDL.
DROP TABLE IF EXISTS TEST;
CREATE EXTERNAL TABLE TEST
PARTITIONED BY (
COL1 STRING,
COL2 STRING
)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.avro.AvroSerDe'
STORED AS
INPUTFORMAT 'org.apache.hadoop.hive.ql.io.avro.AvroContainerInputFormat'
OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.avro.AvroContainerOutputFormat'
LOCATION 'hdfs:///data/hive/TEST'
TBLPROPERTIES ('avro.schema.url'='hdfs:///user/Test.avsc');
Thanks,
Dhaval
From: Aaron.Dossett [mailto:[email protected]]
Sent: Wednesday, March 23, 2016 6:50 PM
To: [email protected]
Cc: '[email protected]'
Subject: Re: Want to Add New Column in Avro Schema
You shouldn't have to drop the table, just update the .avsc. Can you share the
DDL you use to create the table?
From: "Lunagariya, Dhaval"
<[email protected]<mailto:[email protected]>>
Reply-To: "[email protected]<mailto:[email protected]>"
<[email protected]<mailto:[email protected]>>
Date: Wednesday, March 23, 2016 at 8:17 AM
To: "[email protected]<mailto:[email protected]>"
<[email protected]<mailto:[email protected]>>
Cc: "'[email protected]<mailto:'[email protected]>'"
<[email protected]<mailto:[email protected]>>
Subject: RE: Want to Add New Column in Avro Schema
Yes. I made require changes in .avsc file and I drop the table and re-created
using updated .avsc. But I am not getting existing data in that case.
Where am I wrong? Can you through some light
Thanks,
Dhaval
From: Aaron.Dossett [mailto:[email protected]]
Sent: Wednesday, March 23, 2016 6:36 PM
To: [email protected]<mailto:[email protected]>
Cc: '[email protected]<mailto:'[email protected]>'
Subject: Re: Want to Add New Column in Avro Schema
If you create the external table by reference to the .avsc file (TBLPROPERTIES
( 'avro.schema.url'='hdfs://foo.avsc')) the all you have to do is update that
avsc file in a compatible way and Hive should reflect the new schema. I've
implemented this pattern in my production system for several months now.
-Aaron
From: "Lunagariya, Dhaval"
<[email protected]<mailto:[email protected]>>
Reply-To: "[email protected]<mailto:[email protected]>"
<[email protected]<mailto:[email protected]>>
Date: Wednesday, March 23, 2016 at 6:32 AM
To: "[email protected]<mailto:[email protected]>"
<[email protected]<mailto:[email protected]>>
Cc: "'[email protected]<mailto:'[email protected]>'"
<[email protected]<mailto:[email protected]>>
Subject: Want to Add New Column in Avro Schema
Hey folks,
I want to add new column in existing Hive Table. We created external hive table
with the help of .avsc. Now I want to add new column in that table.
How can I do that without disturbing any data present in table?
Please Help.
Regards,
Dhaval