csv - 类型错误 : string from deserializer instead of int when load csv to table

标签 csv hive

我是樱桃。我想将 csv 加载到表中。

add jar /home/hadoop/csv-serde.jar;
create database IF NOT EXISTS test;
use test;
CREATE TABLE IF NOT EXISTS test.neighbors(
    objID bigint ,
    NeighborObjID bigint ,
    distance float ,
    type smallint ,
    neighborType smallint ,
    mode tinyint ,
    neighborMode tinyint) row format serde  'com.bizo.hive.serde.csv.CSVSerde';

但是描述邻居:

objid   string  from deserializer
neighborobjid   string  from deserializer
distance    string  from deserializer
type    string  from deserializer
neighbortype    string  from deserializer
mode    string  from deserializer
neighbormode    string  from deserializer

所有属性都变成“来自反序列化器的字符串”,而不是 int 或 float。

        objID bigint ,
        NeighborObjID bigint ,
        distance float ,
        type smallint ,
        neighborType smallint ,
        mode tinyint ,
        neighborMode tinyint

这就是我想要的。我想将 csv 加载到邻居。

最佳答案

使用

ROW FORMAT DELIMITED 以','结尾的字段 存储为文本文件;

代替

行格式 serde 'com.bizo.hive.serde.csv.CSVSerde'

关于csv - 类型错误 : string from deserializer instead of int when load csv to table,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30657983/

相关文章:

java - Hive 0.10 - hiveconf 值之间有空格

linux - 将数据解析为 CSV 文件

c# - 使用 csvhelper 进行映射/写入协助

php - Laravel:无法对​​有效负载进行 JSON 编码。错误代码:5

excel - 如何将 mongoDB 数据导出为 CSV 格式?

sql - Hive - 重命名与数据类型同名的字段

javascript - 在不使用数据库的情况下登录网站

hadoop - 开始学习大数据的书籍

java - spark 返回错误 libsnappyjava.so : failed to map segment from shared object: Operation not permitted

hadoop - 执行 Hive 查询时分配了多少个 Mappers 和 Reducers