gpt4 book ai didi

hadoop - 无法查询(从 Hive)在 ​​Pig 中创建的 Parquet 文件

转载 作者:可可西里 更新时间:2023-11-01 14:58:04 26 4
gpt4 key购买 nike

我已经在 Pig 中创建了一个 Parquet 文件(在目录 outputset 中)

grunt> STORE extracted INTO './outputset' USING ParquetStorer;

该文件有 1 条记录,如下所示,

grunt> mydata = LOAD './outputset/part-r-00000.parquet' using ParquetLoader;
grunt> dump mydata;
(val1,val2,val3)
grunt> describe mydata;
mydata: {val_0: chararray,val_1: chararray,val_2: chararray}

在此之后,我在Hive中创建了一个外部表来读取这个文件,

CREATE EXTERNAL TABLE parquet_test (
field1 string,
field2 string,
field3 string)
STORED AS PARQUET
LOCATION '/home/.../outputset';

当我查询表时,我能够检索到 1 条记录, 但所有字段都是 NULL,如下所示,

hive> select * from parquet_test;
NULL NULL NULL

我在这里错过了什么?

附言:

Pig version : 0.15.0
Hive version : 1.2.1

最佳答案

您需要将 pig 中的字段名称与 hive 中的列匹配。

So your hive should look like
CREATE EXTERNAL TABLE parquet_test (
val1 string,
val2 string,
val3 string)
STORED AS PARQUET
LOCATION '/home/.../outputset';

关于hadoop - 无法查询(从 Hive)在 ​​Pig 中创建的 Parquet 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32660671/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com