HdInsight Azure DW Polybase to Hive Table (ORC) с разделом даты не работает

Я пытаюсь создать внешнюю таблицу polybase в хранилище данных Azure для таблицы Hive, которая хранится как ORC (озеро данных HD Insight) и секционируется по дате, когда я запрашиваю внешнюю таблицу ее сбой на сервере SQL без какого-либо надлежащего сообщения об ошибке.

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

Ошибка:

Сообщение 106000, уровень 16, состояние 1, строка 33 Индекс: 23, размер: 23

Деталь:

Таблица улья:

СОЗДАТЬ ВНЕШНЮЮ ТАБЛИЦУ DL_ClickStream_fnl (

.

.) РАЗДЕЛЕНА ПО (TIME_STAMP Date), СОХРАНЕННО КАК ORC;

Внешняя таблица Azure DW:

СОЗДАТЬ ВНЕШНЮЮ ТАБЛИЦУ [stg]. [Dl_clickstream_procd] (

.

.

) С (DATA_SOURCE = [AzureDataLakeStore_clusters], LOCATION = N'clusters / BLMSpark / hive / inventory / coremetrics.db / dl_clickstream_procd ', FILE_FORMAT = [ORCFileFormat_DL], REJECT_TYPE = VALUE_VALUE = 2)

Формат файла:

СОЗДАТЬ ВНЕШНИЙ ФОРМАТ ФАЙЛА [ORCFileFormat_DL] С (FORMAT_TYPE = ORC)


person Nithesh kulal    schedule 05.06.2017    source источник
comment
Хм, разве Хранилище данных SQL Azure на данный момент не поддерживает подключение Polybase только к хранилищу BLOB-объектов Azure и озеру данных Azure? Посмотрите на желтую стрелку здесь. SQL Server 2016 и APS могут подключаться к Hadoop. Тонко, да.   -  person wBob    schedule 06.06.2017


Ответы (1)


В Hive секционированный столбец - это виртуальный столбец, полученный из метаданных каталога. PolyBase читает файлы напрямую, не может заполнить секционированный столбец. В DDL внешней таблицы SQL DW удалите разделение по столбцам, и ваша загрузка должна работать.

person ckarst    schedule 02.11.2017