相关疑难解决方法(0)

我们可以直接将Parquet文件加载到Hive吗?

我知道我们可以使用Spark SQL加载镶木地板文件并使用Impala但是想知道我们是否可以使用Hive做同样的事情.我一直在阅读很多文章,但我仍然感到困惑.

简单地说,我有一个镶木地板文件 - 比如users.parquet.现在我对如何从users.parquet加载/插入/导入数据到hive(显然是在表中)感到震惊.

如果我遗漏了明显的东西,请告诉或指出我正确的方向.

使用镶木地板文件元数据创建配置表

https://phdata.io/examples-using-textfile-and-parquet-with-hive-and-impala/

hadoop hive hiveql parquet apache-spark-sql

16
推荐指数
3
解决办法
4万
查看次数

雅典娜从实木复合地板架构创建表

有没有一种方法可以根据基于Avro模式的实木复合地板文件直接在Amazon Athena中创建表?该模式已编码到文件中,因此它看起来很愚蠢,我需要亲自创建DDL。

我看到了这个,还有另一个重复

但它们与Hive直接相关,对Athena无效。理想情况下,我正在寻找一种无需您在控制台上进行定义即可以编程方式进行操作的方法。

java hive amazon-web-services presto amazon-athena

8
推荐指数
2
解决办法
3301
查看次数

在Parquet Data上使用Avro架构动态创建Hive外部表

我正在尝试动态(不在Hive DDL中列出列名和类型)在镶木地板数据文件上创建Hive外部表.我有底层镶木地板文件的Avro架构.

我的尝试是使用以下DDL:

CREATE EXTERNAL TABLE parquet_test
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.avro.AvroSerDe'
STORED AS PARQUET
LOCATION 'hdfs://myParquetFilesPath'
TBLPROPERTIES ('avro.schema.url'='http://myHost/myAvroSchema.avsc');
Run Code Online (Sandbox Code Playgroud)

使用正确的架构成功创建了我的Hive表,但是当我尝试读取数据时:

SELECT * FROM parquet_test;
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

java.io.IOException: org.apache.hadoop.hive.serde2.avro.AvroSerdeException: Expecting a AvroGenericRecordWritable
Run Code Online (Sandbox Code Playgroud)

有没有办法成功创建和读取Parquet文件,而没有在DDL中提及列名称和类型列表?

hive avro parquet

1
推荐指数
1
解决办法
1万
查看次数