Как просмотреть таблицу каталога данных в S3, используя спектр красного смещения - PullRequest
0 голосов
/ 05 июня 2018

Я создал внешнюю схему для своей базы данных в aws glue.Я вижу список таблиц, но не могу посмотреть данные json.redshift выдает мне эти ошибки.

[Amazon](500310) Invalid operation: S3 Query Exception (Fetch)
Details: 
 -----------------------------------------------
  error:  S3 Query Exception (Fetch)
  code:      15001
  context:   Task failed due to an internal error. Error occured during Ion/JSON extractor match: IERR_INVALID_SYNTAX

  query:     250284
  location:  dory_util.cpp:717
  process:   query2_124_250284 [pid=12336]
  -----------------------------------------------;
1 statement failed.

Я не хочу создавать внешние таблицы, потому что я создам представление, объединяющее внешние таблицы в каталоге данных в клею aws.

Просто обновление:

Я использовал сканер клея aws при создании таблиц в каталоге данных.Они в формате JSON.Если я использую задание, которое будет загружать эти данные в красное смещение, они загружаются как плоский файл (кроме массивов) в таблицу красных смещений.

Пример данных json:

{
  "array": [
    1,
    2,
    3
  ],
  "boolean": true,
  "null": null,
  "number": 123,
  "object": {
    "a": "b",
    "c": "d",
    "e": "f"
  },
  "string": "Hello World"
}

Если я загружу ихпри использовании задания в aws glue вывод будет выглядеть так (как таблица)

см. изображение

Теперь у меня огромное количество таблиц, отсканированных в каталоге данных.Я изо всех сил пытаюсь создать отдельный скрипт этих таблиц, поэтому внешняя схема спектра красного смещения амазонки может быть полезна.

Однако, когда я запрашиваю внешнюю таблицу во внешней схеме, я получаю сообщение об ошибке, как указано выше.У меня не возникает проблем с внешними таблицами из каталога данных, если они загружаются в формате csv, но файлы формата, которые мне нужно прочитать в спектре красного смещения, должны быть в формате json.

Можно ли просмотреть внешнюю таблицу в красном смещенииСпектр того же формата, когда он загружается с помощью задания?

1 Ответ

0 голосов
/ 12 февраля 2019

beni,
Ошибки, выдаваемые RedShift Spectrum, не всегда могут быть точными.Я могу только подтвердить, что запросы с JSON должны работать аналогично другим форматам данных.Между прочим, внешняя таблица должна быть исправлена ​​через клиент SQL в базе данных спектра.

Итак, я предлагаю обратиться к this и this , чтобы просмотреть ваши шаги

...