2016-12-16 3 views
0

データ型がtimestamp, length=9の日付列を持つハイブテーブルを読み込もうとしています。hive(spark 1.6.1)からpysparkのtimstamp値を読み取ることができません

df = hc.sql("select * from schema.table") 

それは他のすべての列(データ型= varchar)を読み取ることができます - 私のコードは次のようになります。それはnullを読み取るか、または私はdf.dtypesを印刷し、データフレームのスキーマが正しく推定されたことが判明し、日付列がtimestampデータ型

意外に同じコードがnotebookで動作していている

日付欄にnone与えいずれか

spark-shell環境でのみ失敗します。

このエラーをレンダリングするのが間違ったり制限されたりする可能性がある人を教えてもらえますか?

答えて

0

私はsparkでこの問題を見てきましたが、データ型がタイムスタンプのときはnullと表示されます。そのバグです。それを回避する方法は、このような何かを使用して文字列としてその日付の列を読む必要がありますto_char(Column_name ,'YYYY-MM-DD HH-MM-SS') as column_name,し、タイムスタンプにキャストします。ソースの種類と、sqoopのようなデータを取得するために使用したツールを教えていただけたら、何らかのファイル形式でデータを取得していますか?私はあなたを助けることができます。

+0

ありがとうございます。IBM Big InsightsツールのSparkシェルでコーディングしています。 Hiveコンテキストを使用してHiveテーブル(Big Insights)からデータを読み込む – CARTman

関連する問題