Сбой Polybase для Azure Data Lake Gen 2 - PullRequest
1 голос
/ 05 марта 2019

Я пытаюсь подключиться из Azure SQLDW через Polybase к файлу Parquet в Data Lake Gen 2. Это мой код:

CREATE DATABASE SCOPED CREDENTIAL DSC_ServicePrincipal
    WITH IDENTITY = '1234567890@https://login.microsoftonline.com/1234567890/oauth2/token',
    SECRET = '1234567890'
GO

CREATE EXTERNAL DATA SOURCE [DS_ADLS] WITH (TYPE = HADOOP, 
        LOCATION = N'abfss://filesystem@storageacc.dfs.core.windows.net', 
        CREDENTIAL = DSC_ServicePrincipal)
GO

CREATE EXTERNAL FILE FORMAT [ParquetFileFormatSnappy] 
WITH (FORMAT_TYPE = PARQUET, DATA_COMPRESSION = N'org.apache.hadoop.io.compress.SnappyCodec')
GO

CREATE EXTERNAL TABLE [dbo].[DimDate]
  (
        [DateSKey]        int   not null,
      [Date]              date  not null,
      [Year]              int   not null,
      [Month]             int   not null,
      [Day]             int not null,
      [WeekOfYear]      int not null,
      [MonthNameShort]  varchar(50) not null,
      [MonthName]         varchar(50)   not null,
      [DayNameShort]      varchar(50)   not null,
      [DayName]         varchar(50) not null
  )
  WITH (DATA_SOURCE = [DS_ADLS],LOCATION = N'/PRESENTED/dimDate',FILE_FORMAT = [ParquetFileFormatSnappy],REJECT_TYPE = VALUE,REJECT_VALUE = 0)

Ошибка создания внешней таблицы и следующая ошибка:возвращено:

Произошла ошибка при доступе к HDFS: возникла исключительная ситуация Java при вызове HdfsBridge_IsDirExist.Сообщение об исключительной ситуации Java: HdfsBridge :: isDirExist - Обнаружена непредвиденная ошибка при проверке существования Directoy: AbfsRestOperationException: HEAD https://xxxx.dfs.core.windows.net/xxxx?resource=filesystem&timeout=90 StatusCode = 403 StatusDescription = Серверу не удалось аутентифицировать запрос.Убедитесь, что значение заголовка авторизации сформировано правильно, включая подпись.ErrorCode = ErrorMessage =

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

Я заблудился относительно того, что сделал неправильно.

1 Ответ

1 голос
/ 05 марта 2019

Проблема заключается в том, что предоставленные пользователем учетные данные oauth в настоящее время не поддерживаются для abfs / abfss.

Поддерживаются следующие методы аутентификации:

  • Ключ учетной записи хранения
  • MSI-аутентификация
...