Hadopp Polybase:查询处理器在处理远程查询阶段遇到意外错误



我是新的Polybase,但我已经能够创建一个外部数据源和外部表从SQL Server Polybase到Hadoop HortonWorks 3.1与Kerberos和HA启用。

当我试图从我的外部表有一个选择查询时,下面的错误被抛出:

Internal Query Processor Error:查询处理器在处理远程查询阶段遇到意外错误。

我已经阅读了文件和可能的原因,说明我需要在安装后重新启动我的Polybase服务,但我已经重新启动了所有SQL server相关的服务和Polybase服务。此外,我的polybase数据移动服务有时会自行停止;然而,当它运行时,我面临同样的错误。

这是我的外部数据源

CREATE EXTERNAL DATA SOURCE [Hive_test3] 
WITH 
(TYPE = HADOOP,
LOCATION = N'hdfs://xxxxxxxxxx:8020', 
RESOURCE_MANAGER_LOCATION = N'xxxxxxxxx:8032',
CREDENTIAL = [HadoopUser2])

和我的外部表:

CREATE EXTERNAL TABLE [dbo].[municipal_test]
(
[id] [int] NULL,
[city_id] [int] NULL,
[name] [varchar](250) NULL
)
WITH (DATA_SOURCE = [Hive_test3],
LOCATION = N'/user/xxxx/xxxx.csv',
FILE_FORMAT = [csvFileFormat],
REJECT_TYPE = VALUE,REJECT_VALUE = 500)

甚至下面的查询都失败:

SELECT 1
FROM 
[dbo].[municipal_test]

你能帮我一下吗?

请检查您已完成以下工作:

  1. 已配置"polybase enabled">
  2. 已配置的"hadoop connectivity">
  3. 修改"yarn-site.xml">
  4. 创建主密钥加密
  5. 在Hadoop中,你已经在操作系统级别创建了用户,并授予其文件夹权限

另外,请提供您的外部文件格式的代码(它不包括当我写这个答案)。以下是关于Kerberos的附加信息:https://learn.microsoft.com/en-us/sql/relational-databases/polybase/polybase-configuration,以及用于故障排除的附加信息:https://learn.microsoft.com/en-us/sql/relational-databases/polybase/polybase-troubleshoot-connectivity。

问题是我们在迁移到另一个域之前已经安装了SQL和Polybase服务。虽然,在更改域名后,我们也更改了服务帐户;然而,日志显示有一两个服务仍在使用旧的服务。因此,使用域帐户卸载和重新安装解决了问题。

最新更新