Создание внутренней таблицы в Amazon Athena - PullRequest
0 голосов
/ 18 октября 2018

Я пытаюсь создать внутреннюю таблицу в Афинах, на данных в S3 в формате паркета:

CREATE TABLE IF NOT EXISTS `vdp_dev.owners_daily`(

  `owner_id` string COMMENT 'from deserializer',
  `username` string COMMENT 'from deserializer',
  `billing_with` string COMMENT 'from deserializer',
  `billing_contacts` string COMMENT 'from deserializer',
  `error_code` string COMMENT 'from deserializer')

PARTITIONED BY (
  `dt` string)
ROW FORMAT SERDE
  'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe'
STORED AS INPUTFORMAT
  'org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat'
OUTPUTFORMAT
  'org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat'
LOCATION
  's3://xxxxx-xx-xxxx-xxxxxx/dim/daily/owners';

, но получаю следующую ошибку:

Только внешняя таблицасоздание поддерживается.(Сервис: AmazonAthena; Код состояния: 400; Код ошибки: InvalidRequestException; Идентификатор запроса: 13c5325b-2217-4989-b5f3-e717462329c1)

Кто-то знает, почему это происходит?Почему я не могу создать внутреннюю таблицу в Афинах?

1 Ответ

0 голосов
/ 18 октября 2018

Из документации Athena :

Все таблицы ВНЕШНИЕ Если вы используете CREATE TABLE без ключевого слова EXTERNAL, Athena выдает ошибку;могут быть созданы только таблицы с ключевым словом EXTERNAL.Мы рекомендуем всегда использовать ключевое слово EXTERNAL.Когда вы отбрасываете таблицу в Афине, удаляются только метаданные таблицы;данные остаются в Amazon S3.

...