我一直在玩弄 Spark、Hive 和 Parquet,我的 Hive 表中有一些数据,下面是它的样子(前面警告法语):
Bloqu� � l'arriv�e NULL
Probl�me de connexion Bloqu� en hub
显然这里有问题。
我所做的是:我将 teradata 表读取为带有 spark 的数据框,将其存储为 Parquet 文件,然后使用该文件将其存储到配置单元,这是我的创建表脚本:
CREATE TABLE `table`(
`lib` VARCHAR(255),
`libelle_sous_cause` VARCHAR(255),
)
STORED AS PARQUET
LOCATION
'hdfs://location';
我真的不知道是什么原因造成的,这可能是由 Teradata > parquet 或 Parquet > Hive 之间的某种特殊编码引起的,我不确定。
任何帮助将不胜感激,谢谢。
最佳答案
我想通了,解决方案是简单地使用 STRING
而不是 VARCHAR
CREATE TABLE `table`(
`lib` STRING,
`libelle_sous_cause` STRING,
)
STORED AS PARQUET
LOCATION
'hdfs://location';
关于hadoop - 如何在 Hive 中存储特殊字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35040129/