由于字符编码不正确,无法使用spark sql读取json数据

eqfvzcg8  于 2021-07-14  发布在  Spark
关注(0)|答案(0)|浏览(145)

在配置单元表上使用sparksql运行查询时,我得到以下输出。因此,我无法查询内部的嵌套字段 jsonColumn .

spark.sql(select jsonColumn from table limit 1);
l/19�\u0002\u000B\u000F_

我检查了executors上的区域设置,如下所示:

LANG=
LANGUAGE=
LC_ADDRESS="POSIX"
LC_ALL=
LC_COLLATE="POSIX"
LC_CTYPE="POSIX"
LC_IDENTIFICATION="POSIX"
LC_MEASUREMENT="POSIX"
LC_MESSAGES="POSIX"
LC_MONETARY="POSIX"
LC_NAME="POSIX"
LC_NUMERIC="POSIX"
LC_PAPER="POSIX"
LC_TELEPHONE="POSIX"
LC_TIME="POSIX"

存储信息

| SerDe Library:                    | org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe | NULL                  |
| InputFormat:                      | org.apache.hadoop.mapred.TextInputFormat           | NULL                  |
| OutputFormat:                     | org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat | NULL                  |

但是,我能够从表中读取数据 org.openx.data.jsonserde.JsonSerDe , org.apache.hadoop.hive.serde2.avro.AvroSerDe 使用spark v2.4.0

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题