2017-05-30 6 views
0

Dans Impala pour une partie de l'horodatage, je reçois des données incorrectes lors de la conversion de l'UTC à PST.Quand je lance même requête dans la ruche je reçois des données correctes mais dans la conversion PST impala ne fonctionne pas correctement quelques-unes des dates.conversion utc à pst en impala

Impala:

select from_utc_timestamp('2006-08-30 08:00:00','PST') 
2006-08-30 01:00:00 

Ruche:

select from_utc_timestamp('2006-08-30 08:00:00','PST') 
2006-08-30 00:00:00 

à surmonter est il anyother moyen de convertir PST utc

Répondre

0

utilisation ci-dessous des conversions de fuseau horaire dans Impala. from_utc_timestamp (horodatage, fuseau horaire chaîne)

timezone : 
for Eastern Time: America/New_York or EST5EDT 
for Central Time: America/Chicago or CST6CDT 
for Mountain Time: America/Denver or MST7MDT 
    Phoenix won't observe daylight saving time: America/Phoenix 

for Pacific Time: America/Los_Angeles or PST8PDT 
for Alaska Time: America/Anchorage or America/Juneau 
for Hawaii Time: America/Adak or EST5EDT 
    Honolulu won't observe day light saving time: Pacific/Honolulu 

select from_utc_timestamp('2017-03-11 13:41:22.084','America/Los_Angeles') 
    2017-03-11 05:41:22.084000000           

select from_utc_timestamp('2017-03-12 13:41:22.084','America/Los_Angeles') 
    2017-03-12 06:41:22.084000000          

select from_utc_timestamp('2017-11-03 13:41:22.084','America/Los_Angeles') 
    2017-11-03 06:41:22.084000000          

select from_utc_timestamp('2017-11-04 13:41:22.084','America/Los_Angeles') 
    2017-11-04 06:41:22.084000000           

select from_utc_timestamp('2017-11-05 13:41:22.084','America/Los_Angeles') 
    2017-11-05 05:41:22.084000000          

**Daylight saving time(2017) ends at 2:00 AM on Sunday, November 5** 
select from_utc_timestamp('2017-11-05 08:58:00.000','America/Los_Angeles') 
    2017-11-05 01:58:00 (UTC -7hrs)             

select from_utc_timestamp('2017-11-05 08:59:00.000','America/Los_Angeles') 
    2017-11-05 01:59:00 (UTC -7hrs)             

select from_utc_timestamp('2017-11-05 09:00:00.000','America/Los_Angeles') 
    2017-11-05 01:00:00 (UTC -8hrs)            

select from_utc_timestamp('2017-11-05 09:01:00.000','America/Los_Angeles') 
    2017-11-05 01:01:00 (UTC -8hrs) 
+0

Cela ne ressemble pas à un S.O. * répondre * - c'est juste une liste d'observations (pas facile à lire BTW), sans aucune conclusion ou recommandation explicite. Pouvez-vous éditer votre réponse au format * (a) * les échantillons de code avec le style 'Code Sample'; * (b) * élaborer sur la cause racine par ex. _ "PST est ambigu et interprété différemment dans Java (Hive) et C++ (Impala)" _ (je devine juste là); * (c) * proposer une solution de contournement? –

+0

sélectionnez from_utc_timestamp ('2017-11-05 13: 41: 22.084', 'America/Los_Angeles') Cela ne fonctionne pas. – vivman

+0

J'ai ajouté des changements d'heure d'été pour le 5 novembre 2017. Je l'ai exécuté sur CDH5.7.6 et je n'ai vu aucun problème. –