1

我正在 Azure SQL DW 中创建数据源,以便使用 BLOB 存储数据创建外部表,但在创建数据源时出现错误。我是这个 polybase 环境的新手,所以请分享你的想法。

我正在尝试在外部表代码中调用数据源。

外部表

create external table [DBA].[TEST]
(
[type] varchar(3) COLLATE   SQL_Latin1_General_CP1_CI_AS NULL,
)
with (LOCATION='https://test.blob.core.windows.net/BCP/',
DATA_SOURCE=TEST,
FILE_FORMAT=pipe_header,
REJECT_TYPE=VALUE,
REJECT_VALUE=0
)

我不确定我还需要在这里传递哪个 KEY。我需要使用 BLOB 存储密钥或其他东西。

数据源

CREATE EXTERNAL DATA SOURCE TEST  
WITH (   
TYPE = BLOB_STORAGE,  
LOCATION = 'https://test.blob.core.windows.net/BCP/'
, CREDENTIAL = KEYS
)  
;

错误代码

Msg 103010, Level 16, State 1, Line 1
Parse error at line: 3, column: 16: Incorrect syntax near 'BLOB_STORAGE'.

Incorrect syntax near 'BLOB_STORAGE'. Expecting CEDS_HADOOP, CEDS_RDBMS, CEDS_SHARDMAPMANAGER, or CEDS_SHAREDMEMORY"

期待

我需要使用 BLOB 存储帐户在 azure sql 数据仓库中创建外部表。

4

1 回答 1

1

PolyBaseTYPE=BLOB_STORAGE中不使用 Confusingly,仅在 Azure SQL 数据库中的 BULK INSERT/OPENROWSET 中使用。使用TYPE=HADOOP,如本演练中所述:将 Contoso 零售数据加载到 Azure SQL 数据

CREATE EXTERNAL DATA SOURCE AzureStorage
WITH (
    TYPE = HADOOP,
    LOCATION = 'wasbs://<blob_container_name>@<azure_storage_account_name>.blob.core.windows.net',
    CREDENTIAL = AzureStorageCredential
);
于 2019-01-28T18:03:42.483 回答