kris433
kris433

Reputation: 414

Type conversion pig hcatalog

I use HCatalog version 0.4. I have a table in hive 'abc' which has a column with datatype 'timestamp'. When i try to run a pig script like this "raw_data = load 'abc' using org.apache.hcatalog.pig.HCatLoader();" i get an error saying "java.lang.TypeNotPresentException: Type timestamp not present".

Upvotes: 6

Views: 2077

Answers (3)

Doroshenko
Doroshenko

Reputation: 121

If you use Hive-Hcatalog 0.13.0 check path to HCatLoader, you must use org.apache.hive.hcatalog.pig.HCatLoader() instead org.apache.hcatalog.pig.HCatLoader()

Upvotes: 1

Hive 0.13 has Timestamp data type. But there will be data loss when using HCatLoader.

But Hive - > Pig will using HCat Loader, the nanoseconds will be lost from timestamp.

Pig - > Hive using HCat Storer. Translates based on Timestamp using milli seconds.

Reference:

https://cwiki.apache.org/confluence/display/Hive/HCatalog+LoadStore#HCatalogLoadStore-TypesinHive0.13.0andLater.1

Upvotes: 0

noam
noam

Reputation: 41

The problem is that hcatalog doesn’t support timestamp type. It will be supported under hive 0.13, they have an issue about this problem that was already solved, you can see the issue in https://issues.apache.org/jira/browse/HIVE-5814

Upvotes: 4

Related Questions