Hi,
Just to answer my own question, just in case anybody gets as stuck as I was.
The answer is that although it's obvious that
INPUTFORMAT 'com.trilliumsoftware.profiling.LookupInputFormat'
OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
is actually an object and so you might expect it to be an object in the JSON,
it's not, it's just a string.
And so the JSON I need to create my table with custom INPUTFORMAT and
OUTPUTFORMAT is like this:
{external:true,
columns :
[ { name: Year, type: string },
{ name: Home, type: string },
{ name: Away, type: string },
{ name: Score, type: string },
{ name: Venue, type: string },
{ name: Attendance, type: string}
],
location : /user/pmarron/Ex/_output/rows,
format: {
rowFormat: { fieldsTerminatedBy: , },
storedAs : INPUTFORMAT
'com.trilliumsoftware.profiling.LookupInputFormat' OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
}
}
Hope that helps someone, it certainly would have helped me.
Z
From: Peter Marron [mailto:peter.mar...@trilliumsoftware.com]
Sent: 29 July 2013 08:47
To: user@hive.apache.org
Subject: Templeton create table with custom inputformat
Hi,
(I'm a little bit behind in reading the lists, so apologies if this is a
duplicate question.)
I am running Templeton v1 (?) and HCatalog 0.5.0 with hive 0.11.0 over Hadoop
1.0.4.
I can use something like this:
curl -s -X PUT -HContent-type:application/json -d @createtable.json
http://hpcluster1:50111/templeton/v1/ddl/database/default/table/ordinals?user.name=pmarron
to successfully create a Hive table in my metastore. Where the file
createtable.json looks like this:
{ external:true,
columns : [
{ name: english, type: string },
{ name: number, type: string },
{ name: italian, type: string }
],
format: {
storedAs : rcfile
rowFormat: { fieldsTerminatedBy: , }
}
}
Now, I can change the storedAs argument to be rcfile, sequencefile,
textfile or orc and they all work.
However I can't work out any syntax which allows me to create a table with a
custom InputFormat.
Is there some way to create a table over the Templeton RESTful interface with
a custom InputFormat?
Also I can't find the source code where this JSON is parsed, is it shipped with
the Hive 11 source?
If so can someone tell me where?
Many thanks in advance.
Regards,
Z