繁体   English   中英

数据框字符串到Hive表Bigint-如何转换

[英]Dataframe string to Hive table Bigint - How to convert

Spark:1.6,Scala,Hive

我有一个数据框DF.printschema

root
 |-- rundatetime: string (nullable = true)
 |-- day_cunt: String (nullable = true)
 |-- my_key: integer (nullable = true)

DF.show()

rundatetime             |day_cunt | my_key
2017-04-21 11:00:06     | 5       |10
2017-04-21 12:10:06     | 15      |1000

我的蜂巢表是

rundatetime String,
day_cunt    BigInt,
my_key      Int
Stored as Parquet;

如何将数据框值保存到Hive表? 请注意DF和配置单元表的数据类型不同。

BigInt不是Spark DataFrames 支持的数据类型

您可以通过将day_count强制转换为Long来创建中间数据day_count

val newDF = df.select($"rundatetime", $"day_count".cast("Long"), $"my_key")

使用cast("BigInt")进行转换不会引发错误,但实际上只会转换为Long数据类型。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM