Переместите файл snappy.parquet в файл impala или beeline в виде таблицы - PullRequest
0 голосов
/ 07 июня 2018

У меня есть файл 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 через spark.read.parquet, он возвращает искомую таблицу (более 1000 строк).

Я не могу напрямую писать в Hive, поскольку у меня нетразрешения для myDF.write.saveAsTable.

Есть ли способ создать таблицу через impala или beeline, даже если impala и beeline имеют разрешения на чтение и выполнение только в hdfs, а не на запись.Или я должен был бы дать Impala и Beeline разрешение писать также в формате hdf?

1 Ответ

0 голосов
/ 07 июня 2018

По сути, вы создаете таблицу на основе метаданных паркета, содержащихся в файле.Если вы также хотите прочитать данные, вы можете указать расположение таблицы следующим образом:

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/'

Она автоматически прочитает все файлы в указанной папке

...