首页 > 解决方案 > SQL Server -- 创建外部文件格式以通过 Polybase 查询 Parquet 文件 -- 由于 TCP 错误而失败

问题描述

上下文:我正在尝试使用 SQL Server 的 Polybase 来查询 parquet 文件中的数据。执行此操作所需的步骤之一是创建映射到 parquet的外部文件格式。MSDN 提供了下面的 SQL 示例。

CREATE EXTERNAL FILE FORMAT parquet_file_format
WITH (  
FORMAT_TYPE = PARQUET,  
--DATA_COMPRESSION = 'org.apache.hadoop.io.compress.SnappyCodec'
DATA_COMPRESSION = 'org.apache.hadoop.io.compress.GzipCodec'
);  

当我执行它时,我收到以下错误。

链接服务器“(null)”的 OLE DB 提供程序“MSOLEDBSQL”返回消息“登录超时已过期”。链接服务器“(null)”的 OLE DB 提供程序“MSOLEDBSQL”返回消息“在建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。找不到或无法访问服务器。检查实例名称是否正确如果 SQL Server 配置为允许远程连接。有关详细信息,请参阅 SQL Server 联机丛书。”。消息 10061,级别 16,状态 1,第 40 行 TCP 提供程序:由于目标计算机主动拒绝,无法建立连接。

我试过启用 TCP 网络协议

在此处输入图像描述

并且还尝试配置远程访问服务器配置选项,这两者都不能解决错误。

EXEC sp_configure 'remote access', 0 ;  
GO  
RECONFIGURE ;  
GO

问题:有人可以指出我正确的方向,或者告诉我我做错了什么吗?

标签: sql-serverparquetsql-server-2019polybase

解决方案


原来问题是 Polybase 服务没有运行。我能够在 sql server 网络配置下的 sql server configuraion manager 中运行它们。这很有帮助:https ://www.sqlservercentral.com/forums/topic/polybase-syntax-error


推荐阅读