将snappy.parquet文件作为表移动到impala或beeline中

ufj5ltwl  于 2021-06-26  发布在  Impala
关注(0)|答案(1)|浏览(379)

我有一个snappy.parquet文件,我想通过impala或beeline将其整体移动到一个表中,通过

CREATE EXTERNAL TABLE IF NOT EXISTS first_test LIKE PARQUET '/user/my_user/my_table/part-00000-c0544fc8-b709-4408-8e90-f0f9e4050691-c000.snappy.parquet'

不工作的原因,因为它说 Fetched 0 row(s) in 0.31s. 当我通过spark.read.parquet在spark中读取这个文件时,它返回我要查找的表(超过1000行)。
我无法直接写入配置单元,因为我没有mydf.write.saveastable的权限。
有没有一种方法可以通过impala或beeline生成一个表,即使impala和beeline在hdfs中只有读和执行权限而没有写权限。或者我必须给 Impala 和直线的许可,以写在hdfs以及?

xkftehaa

xkftehaa1#

实际上,您所做的是基于文件中包含的parquet元数据创建表。如果您也想读取数据,可以按如下所示指定表位置

CREATE EXTERNAL TABLE IF NOT EXISTS 
first_test 
LIKE PARQUET '/user/my_user/my_table/part-00000-c0544fc8-b709-4408-8e90-f0f9e4050691-c000.snappy.parquet'
location 
'/user/my_user/my_table/'

它将自动读取指定文件夹位置内的所有文件

相关问题