Импортировать CSV-файл в Qubole

Я использую Qubole для запуска предварительных запросов.

Мне нужно загрузить файл CSV в мой запрос, но не могу понять, как это сделать.

У кого-нибудь есть опыт с этим?

Для более подробной информации, я нахожусь в разделе анализа.

введите описание изображения здесь

введите описание изображения здесь

Это то, что я до сих пор основывал на ответе @ leftjoin -

use adhoc;
create external table adhoc.test(
  Media_Buy_Key string,
  Day string,
  DSP_Publisher string,
  Final_Media_Cost string
)
row format delimited
fields terminated by ','
lines terminated by '\n'
location 's3://bucket/folder/folder/file.csv/';

Затем я запускаю запрос улья, и он выглядит как [Empty]

Вот как выглядит моя корзина s3: введите описание изображения здесь

1 ответ

Решение

Presto использует Hive metastore для получения информации о таблице и ее местонахождении.

  1. Загрузите файл в какую-нибудь папку S3. На самом деле S3 не имеет местоположений, они эмулируются с использованием имен файлов, содержащих "/". загрузить файл, используя интерфейс Qubole S3. Скажем, в s3://your-bucket-name/your-location/yourfile.csv Расположение здесь s3://your-bucket-name/your-location, Если файл уже в s3, вы можете скопировать его в новое место, используя aws s3 cp команда.

  2. С помощью Hive создайте таблицу поверх вашего местоположения файла.

use your_schema; create external table test( col1 string, col2 string, ... coln type ) row format delimited fields terminated by ',' lines terminated by '\n' location 's3://your-bucket-name/your-location/'; Проверьте, работает ли он в Hive:

select * from your_schema.test limit 10;
  1. Используйте Presto для запроса вашей таблицы

select * from your_schema.test limit 10;

Другие вопросы по тегам