我使用sqoop创建并导入配置单元表,并使用pyspark获取数据。该表由一个字符串字段、一个int字段和几个float字段组成。我可以通过hivesql查询得到整个数据。但是当我用pysparksql编程时,可以显示非浮点字段,而浮点字段总是显示空值。配置单元sql结果:齐柏林飞艇PypSpark输出:配置单元表的详细信息:
tvokkenx1#
我终于找到了原因。因为我是通过sqoop从mysql导入这些表的。原始表列是大写的,在配置单元中,它们被自动转换为所有小写。它导致sparksql无法检索所有转换的字段值(但是hue-hive通常会查询这些数据,这可能是spark的一个bug。)我必须通过指定选项--queryin sqoop命令将大写字段名转换为小写。i、 e.--查询“从表中选择mmm作为mmm…”
1条答案
按热度按时间tvokkenx1#
我终于找到了原因。因为我是通过sqoop从mysql导入这些表的。原始表列是大写的,在配置单元中,它们被自动转换为所有小写。它导致sparksql无法检索所有转换的字段值(但是hue-hive通常会查询这些数据,这可能是spark的一个bug。)我必须通过指定选项--queryin sqoop命令将大写字段名转换为小写。i、 e.--查询“从表中选择mmm作为mmm…”