在 Azure SQL Server 上安装和配置 Polybase - 找不到存储过程“sp_configure”
Posted
技术标签:
【中文标题】在 Azure SQL Server 上安装和配置 Polybase - 找不到存储过程“sp_configure”【英文标题】:Install and configure Polybase on Azure SQL Server - Could not find stored procedure 'sp_configure' 【发布时间】:2019-04-23 08:52:13 【问题描述】:我正在尝试使用
中的数据设置 PolyBase(外部)表 Azure SQL Server 数据库托管在 Azure SQL Server 上(通过门户设置) Azure Blob 存储(CSV 数据)SQL Server 版本:
Microsoft SQL Azure (RTM) - 12.0.2000.8 Nov 2 2018 21:17:06
动机是运行一些连接两个数据源的查询。
Azure SQL Server 是否附带 PolyBase 设置?我不知道如何从这些 docs 中提到的 azure 控制台启用“外部数据的 polybase 查询服务”
当我尝试通过 SQL Server Management Studio 运行这些配置步骤以启用 polybase 和设置连接时:
exec sp_configure @configname = 'polybase enabled', @configvalue = 1;
我收到一个错误
找不到存储过程“sp_configure”
同时运行此查询
SELECT SERVERPROPERTY ('IsPolyBaseInstalled') AS IsPolyBaseInstalled;
返回 - 0
但是,我能够运行这些查询并创建外部数据源
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'password';
CREATE DATABASE SCOPED CREDENTIAL AzureStorage
WITH IDENTITY = 'user', Secret = 'SecretKey';
CREATE EXTERNAL DATA SOURCE AzureStorage with (
TYPE = BLOB_STORAGE,
LOCATION ='wasbs://blob@container.blob.core.windows.net',
CREDENTIAL = AzureStorage
);
当我尝试创建一个新的外部文件时
CREATE EXTERNAL FILE FORMAT taxifileformat
WITH (
FORMAT_TYPE = DELIMITEDTEXT,
FORMAT_OPTIONS (FIELD_TERMINATOR =',')
);
我得到错误
“EXTERNAL”附近的语法不正确
我的问题是:
Azure SQL Server 是否启用了 polybase?如果没有,我该如何启用它们?
创建一个我打算用来创建外部表的外部格式可能会出现什么问题?
谢谢!
【问题讨论】:
不,不是 Azure SQL 数据库。我也尝试过,最终使用了 Azure SQL 数据仓库。 docs.microsoft.com/en-us/sql/relational-databases/polybase/…您可以在 SQL Server 2016 及更高版本(仅限 Windows)、分析平台系统(以前称为并行数据仓库)或 Azure SQL 数据仓库中使用 polybase。 【参考方案1】:Azure SQL 数据库不支持 Polybase。这是用户希望将来在 Azure SQL 数据库上看到的投票最多的功能之一。如果您想为此功能投票,请投票here。
sp_configure 在 Azure SQL 数据库上也不可用。请改用ALTER DATABASE SCOPED CCONFIGURATION 来配置 Azure SQL 数据库。
如果您需要 Polybase,Azure SQL 数据仓库似乎是您更好的选择,正如您问题的 cmets 中所述。
【讨论】:
您可以使用 BULK INSERT 或 OPENROWSET 从 Azure Blob 存储加载。 blogs.msdn.microsoft.com/sqlserverstorageengine/2017/02/23/… 是的,您可以通过 BULK INSERT 或 OPENROWSET 使用批量加载数据,但与 Azure DW 或 Synapse Analtics(已启用 PolyBase)中的相同功能产品相比,这两者在 Azure SQL 中的限制更大;例如,它们支持文件类型 DAT、BCP、CSV,但不支持 Parquet 文件(这是我目前的用例)。以上是关于在 Azure SQL Server 上安装和配置 Polybase - 找不到存储过程“sp_configure”的主要内容,如果未能解决你的问题,请参考以下文章
使用Azure Automation Hybrid管理本地SQL Server备份状态
我可以在 Azure Sql 数据库和 Sql Server 2012(本地服务器)之间创建复制吗?
本地 SQL Server 实例和 Azure SQL Server 中的 LoadData 脚本