有没有一种方法,如何在sparksqlselect查询中将输入字符串字段转换成列指定为varchar(xx)的orc表?或者我必须用一些变通方法?我用的是spark 1.6。
我在cloudera论坛上发现,spark不关心长度,它将值保存为字符串,没有大小限制。
表插入到了配置单元中,但我有点担心数据质量。
temp_table = sqlContext.table(ext)
df = temp_table.select(temp_dable.day.cast('string'))
我想看看这样的东西:))
df = temp_table.select(temp_dable.day.cast('varchar(100)'))
编辑:
df.write.partitionBy(part).mode('overwrite').insertInto(int)
我插入的表保存为orc文件(上面的行可能应该有.format('orc'))。
我在这里发现,如果我将一列指定为varchar(xx)类型,那么输入字符串将被截断为xx长度。
谢谢
暂无答案!
目前还没有任何答案,快来回答吧!